我目前正在使用此脚本来清理文本块...
function rseo_sanitize($s) {
$result = preg_replace("/[^a-zA-Z0-9'-]+/", "", html_entity_decode($s, ENT_QUOTES));
return $result;
}
我想添加对特殊字符集合的支持,例如ñ,á,é,í,ó,ú等
如何将这些(以及更大的西班牙语字符集合)整合到preg_replace中?
答案 0 :(得分:2)
您可以使用/\pL+/u
匹配Unicode中的所有字母符号。
仅在PCRE中没有单独的西班牙语字母平面,但您可以尝试:
/[^\p{Latin}0-9'-]+/u
这包括我认为的ISO Latin-1字符集中的所有内容。这包括其他欧洲语言,而不仅仅是西班牙语。但是否则你真的必须单独列出所需的字母。
答案 1 :(得分:0)
您应该使用\w
和u
修饰符
示例:
/[^\w]+/u