java – 使用正则表达式处理我自己的转义字符
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java – 使用正则表达式处理我自己的转义字符,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1638字,纯文字阅读大概需要3分钟。
内容图文
![java – 使用正则表达式处理我自己的转义字符](/upload/InfoBanner/zyjiaocheng/802/c97885c9f6f64a73a005cab408256704.jpg)
首先,我要为我的英语不好道歉,请让我解释一下我的情况,
假设我有2个文本框供用户输入.在服务器端,我想结合使用
两个字符串作为由’,’字符分隔的单个字符串.例如,如果是用户
将第一个文本框输入为“hello world”,将第二个文本框输入“foo bar”,
最后的字符串应该是“hello world,foo bar”.需要拆分此字符串
稍后用于其他操作以利用其内容.所以当字符串被拆分时,就像
‘,”字符用作分隔符,结果字符串
将会
string [0] =“你好世界”
string [1] =“foo bar”
分别.
当然,当用户在其字符串中键入“,”字符时,这很容易受到影响
在一个无法正确拆分的字符串中.例如,当用户输入“hello,world”时
在第一个文本框和第二个文本框中的“foo,bar”,最后的字符串将是
“hello,world,foo,bar”和拆分结果错误地是4个单独的字符串.
我想出了一个自定义转义字符的想法.那就是如果用户输入’,’字符,它必须以’/’为前缀
服务器端的字符.例如,如果用户输入“hello,world”和“foo,bar”
,最后的字符串将是“hello /,world,foo /,bar”,现在可以拆分,因为确切
已知分隔符,它是一个单独的’,’字符,前面没有’/’字符.
我写了一些java代码来处理它,如下所示:
String testText = "hello/,world,foo/,bar";
String[] split = testText.split("[^/],");
for(int i=0; i<split.length; i++)
{
System.out.println(split[i]);
}
返回的结果是
string [0] = hello /,worl
string [1] = foo /,bar
这是不正确的,因为“世界”这个词的’d’字符丢失了.
似乎这个案例的分隔符是某个字符,它不是/后跟’,’这是很容易理解的.
但是我想要的东西就像“用分隔符分割字符串’,’只跟随不是’/’字符的字符.所以适用于我的情况,只有’,’字符在中间
字符串将被拆分,因此最终结果将是正确的,如下所示:
string [0] =你好/,世界
string [1] = foo /,bar
我意识到我可能要重写我的正则表达式,但我不知道如何.
任何建议都会受到欢迎.
解决方法:
使用背后的负面看法
testText.split("(?<!/),");
缺乏外观确保没有/之前,没有匹配它.
内容总结
以上是互联网集市为您收集整理的java – 使用正则表达式处理我自己的转义字符全部内容,希望文章能够帮你解决java – 使用正则表达式处理我自己的转义字符所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。