แชร์ผ่าน


ฟังก์ชัน Split

ใช้กับ: แอป Canvas โฟลว์เดสก์ท็อป แอปที่ขับเคลื่อนด้วยโมเดล Power Pages Power Platform CLI

แยกสตริงข้อความเป็นตารางของสตริงย่อย

Description

ฟังก์ชัน Split จะแบ่งสตริงข้อความเป็นตารางของสตริงย่อย ใช้ Split เพื่อแบ่งรายการที่คั่นด้วยจุลภาค วันที่ที่ใช้เครื่องหมายทับระหว่างส่วนต่างๆ ของวันที่ และในสถานการณ์อื่นที่ใช้ตัวคั่นที่กำหนดไว้เป็นอย่างดี

สตริงตัวคั่นจะใช้เพื่อแบ่งสตริงข้อความออกเป็นส่วนๆ ตัวคั่นอาจเป็นศูนย์ มีอักขระหนึ่งตัว หรือมากกว่านั้นที่ตรงกับสตริงข้อความทั้งหมด การใช้ผลลัพธ์สตริงที่มีความยาวเป็นศูนย์หรือ ว่างเปล่า ในอักขระแต่ละตัวจะถูกแบ่งออกทีละรายการ อักขระตัวคั่นที่ตรงกันจะไม่ถูกส่งกลับในผลลัพธ์ ถ้าไม่พบตัวคั่นที่ตรงกัน สตริงข้อความทั้งสตริงจะถูกส่งกลับเป็นผลลัพธ์เดียว

ใช้ฟังก์ชัน Concat เพื่อรวมสตริงอีกครั้งโดยไม่มีตัวคั่น

ใช้ฟังก์ชัน MatchAll เพื่อแยกสตริงโดยใช้นิพจน์ปกติ

ตัวอย่างแสดงให้เห็นว่า Split สามารถใช้กับฟังก์ชัน First และ Last เพื่อแยกสตริงย่อยที่มีการคั่นเดียว ฟังก์ชัน Match มักจะเป็นทางเลือกที่ชัดเจน และมีประสิทธิภาพมากกว่าสำหรับนิพจน์ปกติ

ไวยากรณ์

แยก( ข้อความ, ตัวคั่น )

  • ข้อความ - จำเป็น ข้อความที่จะแยก
  • ตัวคั่น - จำเป็น ตัวคั่นที่จะใช้ในการแยกสตริง อาจเป็นศูนย์อักขระ หนึ่งอักขระ หรือมากกว่านั้นได้

ตัวอย่าง

การใช้งานพื้นฐาน

สูตร คำอธิบาย ผลลัพธ์
Split( "Apples, Oranges, Bananas", "," ) แยกผลไม้ที่แตกต่างกันออกจากกันโดยยึดตามตัวคั่นจุลภาค ดำเนินการแยกโดยยึดตามจุลภาคเท่านั้นและไม่รวมช่องว่างด้านหลังเครื่องหมาย จะส่งผลให้มีช่องว่างที่ด้านหน้า "ส้ม" และ "กล้วย" ตารางแบบคอลัมน์เดียวที่มีคอลัมน์ Value ที่มีค่าต่อไปนี้: "แอปเปิ้ล, " ส้ม", " กล้วย"
TrimEnds( Split( "Apples, Oranges, Bananas", "," ) ) เหมือนกับตัวอย่างก่อนหน้านี้ แต่ในกรณีนี้ช่องว่างถูกเอาออกโดย ฟังก์ชัน TrimEnds โดยดำเนินการบนตารางแบบคอลัมน์เดียวที่สร้างโดย Split เรายังสามารถใช้ตัวคั่น ", " ที่รวมช่องว่างหลังจุลภาค แต่จะทำงานไม่ถูกต้อง หากไม่มีช่องว่างหรือมีสองช่องว่าง ตารางแบบคอลัมน์เดียวที่มีคอลัมน์ Value ที่มีค่าต่อไปนี้: "แอปเปิ้ล, " ส้ม", " กล้วย"
Split( "08/28/17", "/" ) แยกวันที่ออกเป็นส่วนๆ โดยใช้เครื่องหมายทับเป็นตัวคั่น ตารางแบบคอลัมน์เดียวที่มีคอลัมน์ Value ที่มีค่าต่อไปนี้: "08", "28", "17"

ตัวคั่นที่แตกต่างกัน

สูตร รายละเอียด Result
Split( "Hello, World", "," ) แยกคำออกเป็นส่วนๆ โดยใช้เครื่องหมายทับเป็นตัวคั่น ผลลัพธ์ที่สองเริ่มต้นด้วยช่องว่าง เนื่องจากนี่คืออักขระที่ตามด้วยจุลภาคโดยทันที ตารางแบบคอลัมน์เดียวที่มีคอลัมน์ Value ที่มีค่าต่อไปนี้: "สวัสดี", " ชาวโลก"
Split( "Hello, World", "o" ) แยกสตริงออกจากกันโดยใช้อักขระ "o" เป็นตัวคั่น ตารางแบบคอลัมน์เดียวที่มีคอลัมน์ Value ที่มีค่าต่อไปนี้: "Hell", ", W", "rld"
Split( "Hello, World", "l" ) แยกสตริงออกจากกัน โดยใช้อักขระเดี่ยว "l"เป็นตัวคั่น เนื่องจากไม่มีอักขระระหว่าง l สองตัวอยู่ใน Hello ค่า ว่าง จึงถูกส่งกลับ ตารางแบบคอลัมน์เดียวที่มีคอลัมน์ Value ที่มีค่าต่อไปนี้: "He", Blank(), "o, Wor", "d"
Split( "Hello, World", "ll" ) แยกสตริงออกจากกัน โดยใช้อักขระคู่ "ll" เป็นตัวคั่น ตารางแบบคอลัมน์เดียวที่มีคอลัมน์ Value ที่มีค่าต่อไปนี้: "He", "o, World"
Split( "Hello, World", "%" ) แยกสตริงออกจากกัน โดยใช้สัญลักษณ์เปอร์เซ็นต์เป็นตัวคั่น เนื่องจากตัวคั่นนี้ไม่ปรากฏในสตริง สตริงทั้งหมดจึงส่งกลับเป็นผลลัพธ์เดียว ตารางแบบคอลัมน์เดียวที่มีคอลัมน์ Value ที่มีค่าต่อไปนี้: "Hello, World"
Split( "Hello, World", "" ) แยกสตริงออกจากกัน โดยใช้สตริงเปล่าเป็นตัวคั่น (อักขระเป็นศูนย์) ซึ่งจะแบ่งสตริงบนอักขระแต่ละตัว ตารางแบบคอลัมน์เดียวที่มีคอลัมน์ Value ที่มีค่าต่อไปนี้: "H", "e", "l", "l", "o", ",", " ", "W", "o", "r", "l", "d"

การแยกสตริงย่อย

สูตร รายละเอียด Result
First( Split( Last( Split( "Bob Jones <bob.jones@contoso.com>", "<" ) ).Result, ">" ) ).Result แยกสตริงออกจากกันตามตัวคั่นเปิด (<) และแยกสตริงทางด้านขวาของตัวคั่นด้วย ล่าสุด สูตรจะแยกผลลัพธ์นั้นตามตัวคั่นปิด (>) และแยกสตริงทางด้านซ้ายของตัวคั่นด้วย ขวา "bob.jones@contoso.com"
Match( "Bob Jones <bob.jones@contoso.com>", "<(?<email>.+)>" ).email ดำเนินการแยกตามตัวคั่นเช่นเดียวกับตัวอย่างสุดท้าย แต่ใช้ฟังก์ชัน Match และนิพจน์ปกติแทน "bob.jones@contoso.com"