距离9号线七宝站735米
这样的一句话,我希望匹配中间的七宝站或者其它的类似的站名,蠢一点的方法可以用正则去替换掉距离9号线以及735线,但我还是想问问大佬们有没有更好的方案。
距离9号线七宝站735米
这样的一句话,我希望匹配中间的七宝站或者其它的类似的站名,蠢一点的方法可以用正则去替换掉距离9号线以及735线,但我还是想问问大佬们有没有更好的方案。
var str = '距离9号线七宝站735米';
// 确定前面是线,后面是**站。可以这样实现
var result = str.match(/线(.*?站)/);
console.log(result[1]); // '七宝站'
// 这样实现简单。.指几乎所有的任意字符。*指0个或多个。这里的?指惰性模式。就是匹配尽可能少。
// 上面写法可能不是那么高效。// 如果确定没有站前站类似的。可以这样写。更加高效些。
// var result = str.match(/线([^站]*站)/);
13 回答12.9k 阅读
7 回答2.1k 阅读
3 回答1.3k 阅读✓ 已解决
2 回答1.3k 阅读✓ 已解决
6 回答1.2k 阅读✓ 已解决
6 回答1.1k 阅读
2 回答1.3k 阅读✓ 已解决
尽量把规则以及场景描述清楚一点,不然写的正则不具备普遍性
这个就能把七宝站匹配出来,就是不知道是否满足所有条件。