在我的项目中,我通过id找到时区。
以下是一个例子:
(GMT+07:00) Indian, Christmas
如何让它看起来像这样:
Indian\Christmas
有正则表达式吗?
答案 0 :(得分:0)
您可以尝试以下操作:1)将()
替换为空字符串""
,2)将,
替换为\
$string = '(GMT+07:00) Indian, Christmas';
$string = preg_replace("/\([^)]+\)/","",$string);// 'Indian, Christmas'
$string = preg_replace("/\, +\)/","\\",$string);// 'Indian\Christmas'
答案 1 :(得分:0)
单个preg_replace()
电话会完成这项工作。我的模式和替换将匹配整个字符串,并将其替换为将由\
连接在一起的第一个和第二个捕获组。
代码:(PHP Demo)
$input='(GMT+07:00) Indian, Christmas';
echo preg_replace('/\S+ ([^,]+), (.+)/','$1\\\$2','(GMT+07:00) Indian, Christmas');
// output: Indian\Christmas
以下是Pattern Demo
这可以通过多种方式完成。如果你喜欢非正则表达式方法,这里有一个利用每个字符串前面的静态长度的方法:
echo str_replace(', ','\\',substr($input,12)); // same output