取得字符串指定数据有什么高效率的方法

2016-06-01 22:07:45 +08:00
ifane  ifane

如图想获取“:”后面的数据,除了字符串分割有啥高效率的方法 一定要用正则表达式么? 怎么用。对正则表达式头大啊

3143 次点击
所在节点   程序员  程序员
17 条回复
9hills
9hills
2016-06-01 22:13:18 +08:00
字符串分割效率已然非常高了。。你嫌弃它什么
aprikyblue
aprikyblue
2016-06-02 02:02:35 +08:00
不分割那你逐字节遍历吧。。
ayaseangle
ayaseangle
2016-06-02 03:09:53 +08:00
感觉这格式符合 csv ,指定一下分隔符为:就好。。。
qqmishi
qqmishi
2016-06-02 03:32:15 +08:00
^[^:]*:(.*)$
正则效率已经很高了,,,

或者你用 indexOf 再分割试试
msg7086
msg7086
2016-06-02 03:34:31 +08:00
你要多高的效率?数据有几亿吗?
xupefei
xupefei
2016-06-02 04:20:07 +08:00
仅仅从截图来看,直接用数组下标定位最快……
guyj93
guyj93
2016-06-02 05:40:27 +08:00
循环:
移动下标至':'
移动下标至'\n',取出:与\n 间字符串保存。
imn1
imn1
2016-06-02 07:08:11 +08:00
java 就不知道了,但这个实际上是 ini 格式,相当于 xxx=xxx
innoink
innoink
2016-06-02 07:11:15 +08:00
你只要把编码处理好,还搞什么正则,直接定位都能定位到
bramblex
bramblex
2016-06-02 07:26:17 +08:00
用字符串分割简直不能再高效了……
tobyxdd
tobyxdd
2016-06-02 08:12:25 +08:00
str=str.substring(4); 😂😂
ifane
ifane
2016-06-02 08:40:26 +08:00
yuhuan66666
yuhuan66666
2016-06-02 10:12:56 +08:00
这个貌似是用 properties.load()加载吧
popok
2016-06-02 11:27:22 +08:00
@ifane 这方法难道不好吗?我觉得挺实用了啊
aitaii
2016-06-02 16:12:13 +08:00
一点数据应该体现不出来快慢,这样就够了吧。。。
louk78
2016-06-02 18:09:33 +08:00
用 STL 吧,效率还可以
fatedier
2016-06-03 10:35:17 +08:00
正则表达式效率高么?如果不是复杂的逻辑尽量不要用吧。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/282822

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX