提取括号之间的文本集的最佳/最有效方法是什么?假设我想以最有效的方式从字符串“忽略除此(文本)之外的所有内容”中获取字符串“ text”。
到目前为止,我想出的最好的办法是:
$fullString = "ignore everything except this (text)";
$start = strpos('(', $fullString);
$end = strlen($fullString) - strpos(')', $fullString);
$shortString = substr($fullString, $start, $end);
有一个更好的方法吗?我知道通常使用正则表达式的效率通常较低,但是除非我可以减少函数调用的次数,否则这也许是最好的方法?有什么想法吗?
我只是做一个正则表达式,并克服它。除非您进行了足够多的迭代以至于成为一个严重的性能问题,否则编写代码会更容易(并且可以回顾一下它的内容)
$text = 'ignore everything except this (text)';
preg_match('#\((.*?)\)#', $text, $match);
print $match[1];
我需要一些方法来捕捉方括号中的文本。例如,以下字符串:
问题内容: 如何从中提取字符串并使用模式匹配或其他方法。例如,如果文本是` “您好(Java)” 然后如何获得。 谢谢。 问题答案: 试试这个: 要么
问题内容: 输入线在下面 你能帮我写一个Java正则表达式来提取 从上方输入线? 问题答案: 更加简洁:
问题内容: 我需要某种方式来捕获方括号之间的文本。因此,例如,以下字符串: 可用于创建以下数组: 我有以下正则表达式,但它仅捕获第一个实例,因此: 如何获得所需的输出?请注意,方括号从不嵌套,因此不必担心。 问题答案: 匹配所有带括号的字符串: 如果要不带括号的字符串: 不带括号的替代版本,较慢的匹配版本(使用“ *”代替“ [^]”):
在Javascript中,我希望得到一个字符串,表示两个括号之间的所有文本,即使该字符串包含更多的括号。 其工作如下: "(a)(b)(c)"。匹配(某物); [“a”、“b”、“c”] 或者 “a” “((a)(b)(c))”。匹配(某物); (a)(b)(c)
问题内容: 我只是想知道如何在php中删除一组括号和括号本身之间的文本。 范例: ABC(测试1) 我想删除(Test1),只离开ABC 谢谢 问题答案: 是基于Perl的正则表达式替换例程。该脚本的作用是匹配所有出现的右括号,后跟任意数量的字符 而不是 右括号,然后再次跟右括号,然后删除它们: 正则表达式细目: