正則運算式模式/[^[:ascii:]] /ui將匹配一個或多個非 ascii 字符。
正則運算式模式/[\p{L}] /ui將匹配 unicode 'letter' 類中的一個或多個字符。
我不知道如何匹配一個或多個在 unicode 'letter' 類中并且不是 ascii 字符的字符。
uj5u.com熱心網友回復:
您可以使用這樣的否定字符類:
[^\P{L}[:ascii:]]
正則運算式演示 1
這將匹配任何不是 ASCII 且不被\P{L}(inverse of \p{L})匹配的字符的 1
或者,您可以在非捕獲組中使用負前瞻:
(?:(?![[:ascii:]])\p{L})
正則運算式演示 2
uj5u.com熱心網友回復:
您可以使用
[^\P{L}A-Za-z]
它匹配任何不等于 ASCII 字母的 Unicode 字母。
請參閱正則運算式演示。
在 PHP 中,您應該使用該u標志使其與 Unicode 字串一起正常作業:
$regex = '/[^\P{L}A-Za-z] /u';
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/485661.html
上一篇:重新獲取大括號之間的文本
