我需要在Tasker“变量搜索替换”中编辑字符串变量,但不要识别特殊字符。
我需要在字符串下面编辑
+70 888 777 1 1 3
to;
70888777113
我怎样才能实现这个目标?
答案 0 :(得分:2)
您可以使用以下内容进行匹配(简易方法):
\D //(any non digit)
并替换为''
(空字符串)
请参阅DEMO
<强>代码:强>
str = str.replaceAll("\\D", "");
编辑:如果您的字符串是另一个字符串的一部分,请使用以下命令:
(?<=\d)\s+(?=\d)|\+(?=\d)
请参阅DEMO
说明:
(?<=\d)\\s+(?=\d)
所有数字包围的空格\+(?=\d)
在数字开头加号答案 1 :(得分:1)
如果String tmp = "+70 888 777 1 1 3";
然后
tmp = tmp.replaceAll("\\s+", "");
将从tmp
和
if (tmp.startWith("+")) {
tmp = tmp.substring(1, tmp.length());
}
将删除+
答案 2 :(得分:1)
您可以使用以下内容替换字符串中的所有空格:
$string = preg_replace('/\s+/', '', $string);
答案 3 :(得分:0)
尝试此代码,它在java中运行良好
String str = "+1234567";
if(str.substring(0, 0).equals("+")){
// assign value string value expect first character
str = str.substring(1);
}
答案 4 :(得分:0)
使用以下代码 字符串tmp =“+ 70 888 777 1 1 3”; tmp replaceAll(“[^ 0-9] +”,“”);