我目前有这样如何在字符串中提取或preg_replace汉字?
蘋果,香蕉,橙。
榴蓮, 啤梨
鳳爪,排骨,雞排
24個男,2個女,30個老人
我想要做的是刚刚发生爆炸,从这些字符串的所有中国和字母数字串什么的清单。 我怎么能代替所有特殊字符,如,
,
。
/
"
和空间与-
或_
然后提取与explode()
像$str = explode("-",$str);
或$str = explode("_",$str);
所有中国字?
我目前有这样
if(/^\S[\u0391-\uFFE5 \w]+\S$/.test(value)).....
正则表达式我修改成
$str = preg_replace("/^\S[\x{0391}-\x{FFE5} \w]+\s+\S$/u", "-", $str);
但似乎没有奏效...
在线exampls: https://www.regex101.com/r/qR8aA6/1
编辑:我的预期输出(第一次刺痛):
首先就应及时更换成
蘋果-香蕉-橙-
或蘋果_香蕉_橙_
然后我可以使用$str = explode("-",$str);
,使他们最终成为:
Array
(
[0] => 蘋果
[1] => 香蕉
[2] => 橙
)
您的预期产出是?你想用'-'替换'\ n'吗? – 2015-02-06 02:34:08
你最终的目标是什么?为什么你需要替换字符? – Alex 2015-02-06 02:37:28
,而不是用'-'替代,你可以直接根据'[^ \ p {L} \ p {N} \ n] +'正则表达式来分割输入。 – 2015-02-06 02:45:32