我有这样的字符串
这:字符串:必须〜:是:分:时:前面:CHAR:是:不〜:此
我需要用分隔符":"拆分该行,但仅当分隔符前的字符不是"〜"时才
我现在有以下正则表达式:
String[] split = str.split(":(?<!~:)");
Run Code Online (Sandbox Code Playgroud)
它有效,但是由于我纯粹通过反复试验来达到它,我不相信它是最有效的方法.此外,此功能将经常在大字符串上重复调用,因此性能会受到考虑.什么是更有效的方式?
一个稍微简单的方法是:
(?<!~):
Run Code Online (Sandbox Code Playgroud)
这样你:两次不匹配.我怀疑你会看到表演上的任何差异.通过简单地查找下一个冒号并在它之前检查代字号,在没有正则表达式的情况下编写也非常简单.
| 归档时间: |
|
| 查看次数: |
1822 次 |
| 最近记录: |