我應該如何在正則表達式中包含重音符號?我想從a-z
和äáàëéèíìöóòúùñç
檢測字母,但這個表達式不起作用:正則表達式和重音符號
$pattern = '/^([a-zäáàëéèíìöóòúùñç])/i';
我應該如何在正則表達式中包含重音符號?我想從a-z
和äáàëéèíìöóòúùñç
檢測字母,但這個表達式不起作用:正則表達式和重音符號
$pattern = '/^([a-zäáàëéèíìöóòúùñç])/i';
在這裏你可以找到我的問題的解決方案: Using of regex whith preg_replace_callback ,似乎正則表達式必須是這樣的:$ pattern ='/(\p{L})(.+)/iu';
你可以嘗試將u
標誌添加到您的正則表達式(見PCRE_UTF8上modifiers頁)
您可以嘗試使用預定義的類來匹配所有字母,例如:
[\p{L}]
這將適用於大多數正則表達式引擎。
你可以閱讀更多關於正則表達式的Unicode這裏,例如:http://www.regular-expressions.info/unicode.html
這又是怎麼用的?我的意思是,$ pattern ='/ ^([\ p {L}])/';沒有解決我的問題... – jprog
如何:
cat test.php
<?php
preg_match('/\pL/u', 'é', $m);
print_r($m);
?>
php -q test.php
Array
(
[0] => é
)
你正在學什麼語言?你可以顯示你正在測試的例子字符串 – jorgehmv
我的例子字符串可能是'ésta',我正在西班牙語..這正則表達式不檢測'é' – jprog
對不起,我的意思是什麼編程語言..我不知道爲什麼'我'在最後,是你的編程語言特定的東西嗎? – jorgehmv