我需要从字符串的开头和结尾删除像“,。/!等”的符号。但是仍然需要保留数字和字符,如ąčęėįšųž以及更多来自UTF-8的字符和字符。 例如:
&g&g
的结果应为g&g
; ąčęėį
的结果应为ąčęėį
; "name"
的结果应为name
; 69
的结果应为69
--abc---
的结果应为abc
我认为应该使用preg_replace
完成,但无法找到。
答案 0 :(得分:1)
如果我理解得很好,这将做你想做的事:
$result = preg_replace('/(?:^[^\p{L}\p{N}]+|[^\p{L}\p{N}]+$)/u', '', $input);
哪里
\p{L}
代表任何字母(unicode)
\p{N}
代表任何数字(unicode)字符
[^\p{L}\p{N}]
是一个负字符类,匹配非字母或数字的字符。