【发布时间】:2015-08-03 17:19:31
【问题描述】:
我从其他答案中知道,在 Regex 上使用 string.split() 会更快地使用短字符串。我正在处理的一个特定脚本要求我在分隔符上拆分一个字符串,并根据它之后的分隔符以特定方式分析每个拆分。例如,我的字符串可能看起来像 abd-123-32-few-333-1212 等......在这种情况下,分隔符是“-”。根据情况,我将需要几个或全部拆分(也就是,对于这个例子,我可能需要 32 和 333,我需要知道 32 在第二个破折号之后,33 在第四个破折号之后) .
我当前的解决方案是在分隔符上拆分,然后遍历该列表以获取我需要的值。我很好奇的是是否有更好/更快的方法来做到这一点。我已经确认 Regex 速度较慢并且不能立即满足我的需求...还有其他建议吗?
【问题讨论】:
-
那么你需要的是每个分割部分的索引?
-
I may need 32 and 333 and I will need to know that the 32 is after the 2nd dash and the 33 after the 4th).所以你想检查第 4 部分中是否存在 33? -
我回复了您的回答 Avinash。简而言之,我需要找到分隔符之间的某个值,然后我需要知道它在什么位置。很抱歉造成混乱!
-
你应该提供一个基准代码,它在你的机器上有多快,你希望它有多快,并准确描述(用词)“分析字符串”在你的情况下是什么意思
-
您将执行此操作多少次,四舍五入到最接近的 100,000?