تُولَّد الوثائق أدناه من جدول النظام
system.functions.format
pattern باستخدام القيم (السلاسل النصية، والأعداد الصحيحة، وما إلى ذلك) المدرجة في الوسيطات، بطريقة مشابهة للتنسيق في بايثون.
يمكن أن تحتوي سلسلة النمط على حقول استبدال محاطة بأقواس معقوفة {}.
ويُعدّ أي شيء غير موجود داخل الأقواس نصًا حرفيًا، ويُنسخ كما هو إلى المخرجات.
يمكن تمثيل القوس المعقوف الحرفي باستخدام قوسين: {{ و }}.
يمكن أن تكون أسماء الحقول أرقامًا (تبدأ من الصفر) أو فارغة (وفي هذه الحالة تُسنَد إليها ضمنيًا أرقام متزايدة بالتتابع).
الصياغة
pattern— سلسلة التنسيق التي تحتوي على عناصر نائبة.Strings0[, s1, ...]— قيمة واحدة أو أكثر لإحلالها في النمط.Any
String
أمثلة
عناصر نائبة مرقّمة
Query
Response
Query
Response
overlay
input بسلسلة أخرى هي replace، بدءًا من الموضع offset المفهرس ابتداءً من 1.
الصياغة
s— سلسلة الإدخال.Stringreplace— سلسلة الاستبدالconst Stringoffset— عدد صحيح من النوعInt(بفهرسة تبدأ من 1). إذا كانت قيمةoffsetسالبة، فيُحسب من نهاية السلسلةs.Intlength— اختياري. عدد صحيح من النوعInt. يحددlengthطول المقطع داخل سلسلة الإدخالsالمراد استبداله. إذا لم يتم تحديدlength، فإن عدد البايتات المحذوفة منsيساوي طولreplace؛ وإلا تُحذفlengthبايت.Int
String
أمثلة
استبدال بسيط
Query
Response
Query
Response
overlayUTF8
s بسلسلة أخرى هي replace، بدءًا من الفهرس offset ذي الأساس 1.
يفترض أن السلسلة تحتوي على نص مرمّز بترميز UTF-8 صالح.
إذا لم يتحقق هذا الافتراض، فلن يُطرَح أي استثناء وستكون النتيجة غير معرّفة.
الصيغة
s— سلسلة الإدخال.Stringreplace— سلسلة الاستبدال.const Stringoffset— عدد صحيح من النوعInt(بفهرسة تبدأ من 1). إذا كانت قيمةoffsetسالبة، فيُحسب الموضع من نهاية سلسلة الإدخالs.(U)Int*length— اختياري. يحدد طول المقتطف داخل سلسلة الإدخالsالمطلوب استبداله. إذا لم يتم تحديدlength، فإن عدد الأحرف المُزالة منsيساوي طولreplace، وإلا فتُزالlengthأحرف.(U)Int*
String
أمثلة
استبدال UTF-8
Query
Response
printf
printf السلسلة المعطاة باستخدام القيم (مثل السلاسل النصية والأعداد الصحيحة والأعداد ذات الفاصلة العائمة وغيرها) المدرجة في الوسائط، على نحو مشابه لدالة printf في C++.
يمكن أن تحتوي سلسلة التنسيق على محددات تنسيق تبدأ بالمحرف %.
ويُعدّ أي شيء لا يقع ضمن % ومحدد التنسيق الذي يليه نصًا حرفيًا، ويُنسخ كما هو إلى المخرجات.
يمكن إفلات المحرف % الحرفي باستخدام %%.
يمكن أن تكون سلسلة التنسيق إما ثابتًا أو تعبير عمود، مما يتيح استخدام أنماط تنسيق مختلفة لكل صف.
البنية
format— سلسلة التنسيق التي تحتوي على محددات%.Stringsub1, sub2, ...— اختياري. صفر أو أكثر من القيم لإدراجها في سلسلة التنسيق.Any
String
أمثلة
تنسيق بأسلوب C++
Query
Response
regexpQuoteMeta
\0, \\, |, (, ), ^, $, ., [, ], ?, *, +, {, :, -.
ويختلف هذا التنفيذ قليلًا عن re2::RE2::QuoteMeta.
فهو يهرّب البايت الصفري على هيئة \0 بدلًا من \x00، ولا يهرّب إلا المحارف المطلوبة.
الصياغة
s— سلسلة الإدخال النصية التي تحتوي على أحرف يجب عمل escape لها في التعابير النمطية.String
String
أمثلة
عمل escape للأحرف الخاصة في التعابير النمطية
Query
Response
replaceAll
pattern في haystack بالسلسلة replacement.
البنية
replace
الوسيطات
haystack— سلسلة الإدخال المراد البحث فيها.Stringpattern— السلسلة الفرعية المطلوب العثور عليها واستبدالها.const Stringreplacement— السلسلة التي سيُستبدل بها النمط.const String
String
أمثلة
استبدال جميع التكرارات
Query
Response
replaceOne
pattern في haystack بالسلسلة replacement.
الصيغة
haystack— سلسلة الإدخال المراد البحث فيها.Stringpattern— السلسلة الفرعية المطلوب العثور عليها واستبدالها.const Stringreplacement— السلسلة التي سيُستبدل بها النمط.const String
String
أمثلة
استبدال أول ظهور
Query
Response
replaceRegexpAll
replaceRegexpOne، لكنها تستبدل جميع حالات ظهور النمط.
واستثناءً من ذلك، إذا طابق تعبير نمطي سلسلة فرعية فارغة، فلا يُجرى الاستبدال أكثر من مرة واحدة.
الصيغة
REGEXP_REPLACE
الوسيطات
haystack— سلسلة الإدخال المراد البحث فيها.Stringpattern— نمط التعبير النمطي المراد العثور عليه.const Stringreplacement— السلسلة التي سيُستبدل بها النمط، وقد تحتوي على استبدالات.const String
String
أمثلة
استبدال جميع الأحرف بنسخة مضاعفة
Query
Response
Query
Response
replaceRegexpOne
pattern (بصيغة re2) في haystack بالسلسلة replacement.
يمكن أن تحتوي replacement على استبدالات \0-\9.
تقابل الاستبدالات \1-\9 المجموعة الملتقِطة الأولى حتى التاسعة (المطابقة الفرعية)، بينما يقابل الاستبدال \0 المطابقة كاملةً.
لاستخدام المحرف \ حرفيًا في السلسلتين pattern أو replacement، قم بتهريبه باستخدام \.
ضع في اعتبارك أيضًا أن القيم الحرفية النصية تتطلب تهريبًا إضافيًا.
الصيغة
haystack— سلسلة الإدخال المراد البحث فيها.Stringpattern— نمط التعبير النمطي المطلوب العثور عليه.const Stringreplacement— السلسلة التي سيُستبدل بها النمط، وقد تتضمن استبدالات.const String
String
أمثلة
تحويل تواريخ ISO إلى التنسيق الأمريكي
Query
Response
Query
Response
translate
s باستخدام مطابقة أحرف واحدًا لواحد تحددها السلسلتان from وto.
يجب أن تكون from وto سلسلتين ثابتتين من نوع ASCII.
إذا كان حجم from وto متساويًا، فسيُستبدل كل ظهور لأول حرف من first في s بأول حرف من to، ويُستبدل كل ظهور لثاني حرف من first في s بثاني حرف من to، وهكذا.
إذا كانت from تحتوي على أحرف أكثر من to، فستُحذف من s جميع ظهورات الأحرف الموجودة في نهاية from التي لا يقابلها حرف في to.
لا تعدّل الدالة الأحرف غير التابعة لـ ASCII في s.
البنية
s— سلسلة الإدخال المراد ترجمتها.Stringfrom— سلسلة ASCII ثابتة تحتوي على الأحرف المراد استبدالها.const Stringto— سلسلة ASCII ثابتة تحتوي على أحرف الاستبدال.const String
String
أمثلة
تعيين الأحرف
Query
Response
Query
Response
translateUTF8
translate، لكنه يفترض أن s وfrom وto سلاسل نصية مرمّزة بترميز UTF-8.
الصياغة
s— سلسلة UTF-8 المُدخلة المراد تحويلها.Stringfrom— سلسلة UTF-8 ثابتة تحتوي على الأحرف المراد استبدالها.const Stringto— سلسلة UTF-8 ثابتة تحتوي على أحرف الاستبدال.const String
String. String
أمثلة
تحويل أحرف UTF-8
Query
Response