Share via


ฟังก์ชัน Replace และ Substitute

ใช้กับ: แอปพื้นที่ทำงาน คอลัมน์สูตร Dataverse โฟลว์เดสก์ท็อป แอปแบบจำลอง Power Platform CLI

แทนที่ส่วนหนึ่งของสตริงข้อความด้วยสตริงอื่น

Description

ฟังก์ชัน Replace จะระบุข้อความที่จะแทนที่ตามตำแหน่งเริ่มต้นและความยาว

ฟังก์ชัน Substitute จะระบุข้อความที่จะแทนที่โดยจับคู่สตริง หากพบมากกว่าหนึ่งการจับคู่ คุณสามารถแทนที่ทั้งหมดหรือระบุการจับคู่เพื่อแทนที่

ถ้าคุณผ่านสตริงเดียว ค่าที่ส่งกลับจะเป็นสตริงที่ปรับเปลี่ยนแล้ว ถ้าคุณผ่าน ตาราง แบบคอลัมน์เดียวที่มีสตริง ค่าที่ส่งกลับเป็นตารางแบบคอลัมน์เดียวที่มีคอลัมน์ ค่า ของสตริงที่แก้ไข ถ้าคุณมีตารางแบบหลายคอลัมน์ คุณสามารถจัดรูปร่างเป็นตารางแบบคอลัมน์เดียวได้ ตามที่ การทำงานกับตาราง อธิบายไว้

ไวยากรณ์

Replace( String, StartingPosition, NumberOfCharacters, NewString )

  • สตริง - จำเป็น สตริงที่จะดำเนินการ
  • StartingPosition - จำเป็นต้องมี ตำแหน่งของอักขระที่จะเริ่มแทนที่ อักขระแรกของ String คือตำแหน่ง 1
  • NumberOfCharacters - จำเป็นต้องมี จำนวนอักขระที่จะแทนที่ใน String
  • NewString - จำเป็นต้องมี สตริงแทนที่ จำนวนอักขระในอาร์กิวเมนต์นี้อาจแตกต่างจากอาร์กิวเมนต์ NumberOfCharacters

Substitute( String, OldString, NewString [, InstanceNumber ] )

  • สตริง - จำเป็น สตริงที่จะดำเนินการ
  • OldString - จำเป็นต้องมี สตริงที่จะแทนที่
  • NewString - จำเป็นต้องมี สตริงแทนที่ OldString และ NewString อาจมีความยาวไม่เท่ากัน
  • InstanceNumber - ไม่บังคับ ใช้อาร์กิวเมนต์นี้เพื่อระบุอินสแตนซ์ของ OldString เพื่อแทนที่ หาก String มีมากกว่าหนึ่งอินสแตนซ์ หากคุณไม่ได้ระบุอาร์กิวเมนต์นี้ อินสแตนซ์ทั้งหมดจะถูกแทนที่

Replace( SingleColumnTable, StartingPosition, NumberOfCharacters, NewString )

  • SingleColumnTable -จำเป็นต้องมี ตารางสตริงแบบคอลัมน์เดียวที่จะดำเนินการ
  • StartingPosition - จำเป็นต้องมี ตำแหน่งของอักขระที่จะเริ่มแทนที่ อักขระแรกของแต่ละสตริงในตารางอยู่ที่ตำแหน่ง 1
  • NumberOfCharacters - จำเป็นต้องมี จำนวนอักขระที่จะแทนที่ในแต่ละสตริง
  • NewString - จำเป็นต้องมี สตริงแทนที่ จำนวนอักขระในอาร์กิวเมนต์นี้อาจแตกต่างจากอาร์กิวเมนต์ NumberOfCharacters

Substitute( SingleColumnTable, OldString, NewString [, InstanceNumber ] )

  • SingleColumnTable -จำเป็นต้องมี ตารางสตริงแบบคอลัมน์เดียวที่จะดำเนินการ
  • OldString - จำเป็นต้องมี สตริงที่จะแทนที่
  • NewString - จำเป็นต้องมี สตริงแทนที่ OldString และ NewString อาจมีความยาวไม่เท่ากัน
  • InstanceNumber - ไม่บังคับ ใช้อาร์กิวเมนต์นี้เพื่อระบุอินสแตนซ์ของ OldString เพื่อแทนที่ หาก String มีมากกว่าหนึ่งอินสแตนซ์ หากคุณไม่ได้ระบุอาร์กิวเมนต์นี้ อินสแตนซ์ทั้งหมดจะถูกแทนที่

ตัวอย่าง

สูตร คำอธิบาย ผลลัพธ์
Replace( "abcdefghijk", 6, 5, "*" ) แทนที่อักขระห้าตัวใน "abcdefghijk" ด้วยอักขระ "*" เดียว โดยเริ่มต้นด้วยอักขระตัวที่หก ("f") "abcde*k"
Replace( "2019", 3, 2, "20" ) แทนที่อักขระสองตัวสุดท้ายของ "2019" ด้วย "20" "2020"
Replace( "123456", 1, 3, "_" ) แทนที่อักขระสามตัวแรกของ "123456" ด้วยอักขระ "_" ตัวเดียว "_456"
Substitute( "Sales Data", "Sales", "Cost" ) แทนที่สตริง "ต้นทุน" ด้วย "การขาย" "ข้อมูลต้นทุน"
Substitute( "Quarter 1, 2018", "1", "2", 1 ) ทดแทนเฉพาะอินสแตนซ์แรกของ "1" ด้วย "2" เนื่องจากอาร์กิวเมนต์ที่สี่ (InstanceNumber) มีให้กับ 1 "ไตรมาส 2, 2018"
Substitute( "Quarter 1, 2011", "1", "2", 3 ) ทดแทนเฉพาะอินสแตนซ์ที่สามของ "1" ด้วย "2" เนื่องจากอาร์กิวเมนต์ที่สี่ (InstanceNumber) มีให้กับ 3 "ไตรมาส 1, 2012"
Substitute( "Quarter 1, 2011", "1", "2" ) ทดแทนอินสแตนซ์ทั้งหมดของ "1" ด้วย "2" เนื่องจากอาร์กิวเมนต์ที่สี่ (InstanceNumber) ไม่มีให้ "ไตรมาส 2, 2022"
Replace(
[ "ไตรมาส 1, 2018",
"ไตรมาส 2, 2011",
"ไตรมาส 4, 2019" ],
9, 1, "3" )
แทนที่อักขระที่เก้าในแต่ละเรกคอร์ดของตารางคอลัมน์เดี่ยวด้วย "3" ตารางแบบคอลัมน์เดียวที่มีคอลัมน์ Value ที่มีค่าต่อไปนี้: [ "Quarter 3, 2018",
"ไตรมาส 3, 2011",
"ไตรมาส 3, 2019" ]
Substitute(
[ "Qtr 1, 2018",
"ไตรมาส 1, 2011",
"Q1, 2019" ],
"1", "3", 1 )
เพราะอาร์กิวเมนต์ที่สี่ (InstanceNumber) มีค่าเป็น 1 แทนที่เฉพาะตัวอย่างแรกของ "1" ในแต่ละเรกคอร์ดของตารางคอลัมน์เดี่ยวด้วย "3" ตารางแบบคอลัมน์เดียวที่มีคอลัมน์ Value ที่มีค่าต่อไปนี้: [ "Qtr 3, 2018",
"ไตรมาส 3, 2011",
"Q3,2019"]
Substitute(
[ "Qtr 1, 2018",
"ไตรมาส 1, 2011",
"Q1, 2019" ],
"1", "3" )
เพราะอาร์กิวเมนต์ที่สี่ (InstanceNumber) ไม่มีค่า แทนที่อินสแตนซ์ทั้งหมดของ "1" ในแต่ละเรกคอร์ดของตารางคอลัมน์เดี่ยวด้วย "3" ตารางแบบคอลัมน์เดียวที่มีคอลัมน์ Value ที่มีค่าต่อไปนี้: [ "Qtr 3, 2038",
"ไตรมาส 3, 2033",
"Q3,2039"]