【发布时间】:2011-12-07 14:59:43
【问题描述】:
我正在寻找一种在第一个字母数字字符之后将字符串分成两部分的快速方法。
我知道我可以在字符串中创建 foreach 字符并检查它是数字还是字母数字,但我不知道它是否很快。
例如我有一个字符串“25I10”
我需要将其拆分为 25 和 I10(我不能将其子串为 0,2,因为第一个数字可以更小或更大。我必须在第一个 AlphaNumeric 字符上拆分它,因为这是命令开始的地方。
它需要很快,因为我在 telnet 上收到了很多命令,我不想放慢速度。
是的,我知道我可以将字符串发送到另一个线程然后拆分它,但我不想为这样的事情创建很多线程。
有人知道最好的选择吗?
【问题讨论】:
-
首先,在内部必须有一个遍历字符串的循环来查看它需要在哪里拆分。所以性能应该不是问题(除非你让它真的很奇怪)。
-
当我写信给@Bengie 时,我忘记了我可以在从 telnet 读取字节时检查它,所以我不必在获得整条线路后进行另一个循环。它现在就像一个魅力;)感谢提示
-
您要求“在第一个字母数字字符之后将字符串拆分为两个”,因此对于您的示例字符串“25|10”将是“2”和“5|10”,而不是您所显示的?你的意思是“字母”而不是“字母数字”?