有没有可能使用正则表达式从字符串的末尾开始搜索?
例如,我有一个字符串:“a2bba2b”
我知道我需要最后一个“/a2/”出现的地方,让机器遍历整个可能很长的字符串似乎效率非常低下。我知道针头将在字符串(干草堆)的末尾附近,因此我想要倒序并简单地告诉脚本从末尾到开头搜索以节省一些资源。
正则表达式似乎是一种匹配更复杂字符串的方法。编写复杂的正则表达式比编写自己的搜索函数容易得多。那么是否有一种方法,或者是标志或其他东西,可以反转搜索顺序以匹配输入字符串的结束而不是开始?现代语言中是否支持这样的功能?如果没有,为什么?
例如,我有一个字符串:“a2bba2b”
我知道我需要最后一个“/a2/”出现的地方,让机器遍历整个可能很长的字符串似乎效率非常低下。我知道针头将在字符串(干草堆)的末尾附近,因此我想要倒序并简单地告诉脚本从末尾到开头搜索以节省一些资源。
正则表达式似乎是一种匹配更复杂字符串的方法。编写复杂的正则表达式比编写自己的搜索函数容易得多。那么是否有一种方法,或者是标志或其他东西,可以反转搜索顺序以匹配输入字符串的结束而不是开始?现代语言中是否支持这样的功能?如果没有,为什么?
Array.prototype.reduceRight()
或.reverse()
来反转字符串,但这样会引入更多的函数调用。当前的方法到底是什么没有返回预期的结果?问题不清楚是什么? - guest271314