ฟังก์ชันบล็อก STR_FORMAT

ฟังก์ชันบล็อก STR_FORMAT ให้คืนสตริงที่ถูกจัดรูปแบบ

ฟังก์ชันบล็อกนี้ตรงกับฟังก์ชัน sprintf ใน C++.

หมายเหตุ: ฟังก์ชันบล็อกนี้สามารถมีมากกว่า 2 อินพุตได้ คุณสามารถคลิกขวาที่ฟังก์ชันบล็อกเพื่อเพิ่มอินพุตเพิ่มเติม

อินพุต Format

อินพุตนี้กำหนดรูปแบบการจัดรูปแบบ ซึ่งประกอบด้วยคำสั่งที่ไม่มีหรือหลายคำสั่ง: ตัวอักษรธรรมดา (ยกเว้น %) ที่ถูกคัดลอกไปยังผลลัพธ์โดยตรง และคำสั่งการแปลงที่เรียกตัวแปรของตนเอง

ในกรณีนี้ คำสั่งการแปลงจะมีโปรโทไทป์ดังต่อไปนี้:

%[ArgNum$][Flags][Weite][.Präzision]Spezifizierer.
ArgNum

ตัวเลขจำนวนเต็มตามด้วยสัญลักษณ์ดอลลาร์ $ ซึ่งระบุหมายเลขอินพุต STR# ที่จะใช้ในการแปลง

Flags
Flag คำอธิบาย
- จัดแนวซ้ายภายในความกว้างของฟิลด์ที่ระบุ; จัดแนวขวาเป็นมาตรฐาน
+ ตัวเลขบวกด้วยสัญลักษณ์ +; ตามมาตรฐานจะแสดงเฉพาะตัวเลขลบด้วยเครื่องหมายลบ
(Leerzeichen) เติมผลลัพธ์ด้วยช่องว่าง これはデフォルトです。
0 เติมด้วยศูนย์จากซ้าย สามารถเติมด้วยศูนย์จากขวากับสเปซิไฟเออร์ s ได้เช่นกัน
'(Zeichen) เติมผลลัพธ์ด้วยตัวอักษรที่ระบุ
Weite

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

Präzision

ความหมายของจุด . ตามด้วยตัวเลขจำนวนเต็มขึ้นอยู่กับสเปซิไฟเออร์:

  • สำหรับสเปซิไฟเออร์ e, E, f และ F: นี้ระบุจำนวนหลักที่จะแสดงหลังจุดทศนิยม (มาตรฐานคือ 6)
  • สำหรับสเปซิไฟเออร์ g และ G: จำนวนหลักที่สุดที่จะแสดง
  • สำหรับสเปซิไฟเออร์ s: ทำงานเหมือนจุดตัดที่ระบุจำนวนตัวอักษรสูงสุดในสตริง

หมายเหตุ: หากจุดถูกระบุโดยไม่มีค่าความแม่นยำที่ชัดเจน ค่า 0 จะถูกใช้แทน

Spezifizierer
Spezifizierer คำอธิบาย
% สัญลักษณ์เปอร์เซ็นต์ ไม่ต้องการพารามิเตอร์
b พารามิเตอร์จะถูกดูแลเป็นตัวเลขจำนวนเต็มและแสดงเป็นตัวเลขฐานสอง
c พารามิเตอร์จะถูกดูแลเป็นตัวเลขจำนวนเต็มและแสดงเป็นตัวอักษรจากเซตตัวอักษร ASCII
d พารามิเตอร์จะถูกดูแลเป็นตัวเลขจำนวนเต็มและแสดงเป็นตัวเลขฐานสิบ (มีสัญลักษณ์)
e พารามิเตอร์จะถูกดูแลเป็นตัวเลขในรูปแบบวิทยาศาสตร์ (เช่น 1.2e+2) จำนวนหลักที่ระบุคือจำนวนหลักหลังจุดทศนิยม
E เหมือนกับสเปซิไฟเออร์ e แต่ใช้ตัวอักษรใหญ่ (เช่น 1.2E+2)
f พารามิเตอร์จะถูกดูแลเป็นตัวเลขทศนิยมและแสดงเป็นตัวเลขทศนิยม (ขึ้นอยู่กับ Locale)
F พารามิเตอร์จะถูกดูแลเป็นตัวเลขทศนิยมและแสดงเป็นตัวเลขทศนิยม (ไม่ขึ้นอยู่กับ Locale)
g รูปแบบทั่วไป
ถ้า P เป็นความแม่นยำ ถ้าหากไม่เป็น 0 ถ้าไม่ระบุความแม่นยำ หรือ 1 ถ้า P เป็น 0 ต่อมา ถ้าการแปลงด้วย E มีตัวเลขกำลัง X:
ถ้า P > X ≥ -4 การแปลงจะใช้สเปซิไฟเออร์ f และความแม่นยำ P - (X + 1) อื่น ๆ จะเหมือนกับสเปซิไฟเออร์ e และความแม่นยำ P - 1
G เหมือนกับสเปซิไฟเออร์ g แต่ใช้ E และ F
o พารามิเตอร์จะถูกดูแลเป็นตัวเลขจำนวนเต็มและแสดงเป็นตัวเลขฐานแปด
s พารามิเตอร์จะถูกดูแลเป็นสตริงและแสดง
u พารามิเตอร์จะถูกดูแลเป็นตัวเลขจำนวนเต็มและแสดงเป็นตัวเลขฐานสิบ (ไม่มีสัญลักษณ์)
x พารามิเตอร์จะถูกดูแลเป็นตัวเลขจำนวนเต็มและแสดงเป็นตัวเลขฐานสิบหก (ใช้ตัวอักษรเล็ก)
X พารามิเตอร์จะถูกดูแลเป็นตัวเลขจำนวนเต็มและแสดงเป็นตัวเลขฐานสิบหก (ใช้ตัวอักษรใหญ่)

ความระวัง: สเปซิไฟเออร์ c ไม่สนใจการเติมและความกว้าง

คำเตือน: การพยายามใช้การผสมผสานของสตริงกับสเปซิไฟเออร์ความกว้างและตัวอักษรที่มีมากกว่า 1 ไบต์ต่อตัวอักษรจะนำไปสู่ผลลัพธ์ที่ไม่สามารถคาดเดาได้

ตัวแปรถูกแปลงเป็นประเภทที่เหมาะสมกับสเปซิไฟเออร์:

Typ Spezifizierer
สตริง s
Integer d, u, c, o, x, X, b
Float g, G, e, E, f, F

อินพุต STR1..STR#

อินพุตนี้หรือหลายอินพุตกำหนดค่าที่จะแทนที่ในสตริงที่ระบุไว้ที่อินพุต FORMAT

เอาต์พุต

ให้คืนสตริงที่ถูกสร้างขึ้น