Regular Expressions 101

Community Patterns

1

ตรวจสอบพยัญชนะต้นตัวสะกดสระและวรรณยุกต์ไทย

Created·2026-01-22 01:36
Updated·2026-01-23 12:42
Flavor·JavaScript
ตรวจสอบพยัญชนะต้น (ต้องมี) ตรวจตัวสะกดสำหรับสระที่ต้องมี ตรวจสอบการวางสระและวรรณยุกต์ไทย หมายเหตุ การตรวจสอบตัวสะกดในภาษาไทยตรวจสอบได้ยากเพราะภาษาไทยเป็นภาษาที่เขียนติด ๆ กันไม่มีการแบ่งคำอย่างชัดเจนทำให้การอ่านภาษาไทยผู้อ่านต้องใช้ความหมายของคำในการตัดสินการอ่านแบ่งคำตามความเหมาะสมเช่นคำว่า "ตากลม" อาจอ่านเป็น "ตาก-ลม" ก็ได้ หรืออ่านเป็น "ตา-กลม"ก็ได้ ดังนั้นการเขียน Regex เพื่อทำการตรวจสอบอาจช่วยได้ระดับหนึ่ง อ่าจมีผิดบ้างถูกบ้าง แต่ก็ถือว่าเป็นเครื่องมือที่ใช้ช่วยเหลือในการตรวจสอบเพิ่มเติมได้ 80% ของความเป็นไปใด้ก็แล้วกันนะครับ หวังว่าการเขียนเพิ่มเติมส่วนนี้ จะมีประโยชน์บ้างไม่มากก็น้อย
Submitted by อธิปัตย์ ล้อวงศ์งาม

Community Library Entry

0

Regular Expression
Created·2017-04-01 22:34
Flavor·PCRE (Legacy)

/
^\h*(create|alter)\s+(function|procedure)\s+((\[|")?[\w_]+(\]|")?\.?)?((\[|")?[\w_]+(\]|")?)?
/
gmi
Open regex in editor

Description

Русский

Я использовал это регулярное выражение для построения Notepad++ списка функций и процедур в SQL файле.
Пример окна Notepad++ со списком функций Вызывается командой: Вид\Список функций. Так как в Notepad++ нет встроенного парсера для SQL кода, то пришлось написать свой. Чтобы его встроить в Notepad++ :

  1. Откройте файл functionList.xml расположенный в пользовательской директории C:\Users\xxxxx\AppData\Roaming\Notepad++ или если при установке вы выбрали чтобы все настройки сохранялись в папке установки, то в C:\Program Files (x86)\Notepad++

  2. Найдите элемент <associationMap> и добавьте в него (между <associationMap> ....</associationMap>) строчку

     <association id= \"T-SQL_func\" langID=\"17\"/>
    
  3. Найдите элемент <parsers> и добавьте в него (между <parsers> ....</parsers>) строки

     <!-- T-SQL             -->
     <parser displayName="T-SQL" id="T-SQL_func" commentExpr="(?s:/\*.*?\*/)|(?m-s:--.*?$)">
     	<function mainExpr='(?im)^\h*(create|alter)\s+(function|procedure)\s+((\[|")?[\w_]+(\]|")?\.?)?((\[|")?[\w_]+(\]|")?)?'
     			  displayMode="$functionName">
     		<functionName>
     			<nameExpr expr='(?im)(function|procedure)\s+((\[|")?[\w_]+(\]|")?\.?)?((\[|")?[\w_]+(\]|")?)?' />
     		</functionName>
     	</function>
     </parser>
    
  4. Пользуйтесь!

English

Used for the Functionion List Notepad++:

  1. Open of the functionList.xml file in Users\xxxxx\AppData\Roaming\Notepad++ directories

  2. Add in element <associationMap>

     <association id= \"T-SQL_func\" langID=\"17\"/>
    
  3. Add in element <parsers>

     <!-- T-SQL             -->
     <parser displayName="T-SQL" id="T-SQL_func" commentExpr="(?s:/\*.*?\*/)|(?m-s:--.*?$)">
     	<function mainExpr='(?im)^\h*(create|alter)\s+(function|procedure)\s+((\[|")?[\w_]+(\]|")?\.?)?((\[|")?[\w_]+(\]|")?)?'
     			  displayMode="$functionName">
     		<functionName>
     			<nameExpr expr='(?im)(function|procedure)\s+((\[|")?[\w_]+(\]|")?\.?)?((\[|")?[\w_]+(\]|")?)?' />
     		</functionName>
     	</function>
     </parser>
    
Submitted by FFFFF