繁体   English   中英

如何使用正则表达式从字符串中去除[az] / [az] /?

[英]How to use regex to strip [a-z]/[a-z]/ from a string?

假设一个字符串是abc/xyz/IMPORTANT/DATA/@#!%@!% ,我只想要IMPORTANT/DATA/!%#@%!#%

我在正则表达式上很糟糕,并且还没有学过JavaScript API

使用indexOfsubstring 你不需要正则表达式。

您可以使用indexOfstart参数从给定位置进行搜索。 如果你在第一个/之后搜索,你可以找到第二个/的索引。

s = "abc/def/ghi/jkl";
s = s.substring(s.indexOf('/', s.indexOf('/') + 1) + 1);
document.writeln(s); // "ghi/jkl"

请注意,这假设始终至少有两个/ 如果没有,这将让s ,因为它是。

s = "abc/xyz";
s = s.substring(s.indexOf('/', s.indexOf('/') + 1) + 1);
document.writeln(s); // "abc/xyz"

如果你想使用正则表达式,它是这样的:

s = "abc/def/ghi/jkl";
s = s.replace(/[a-z]+\/[a-z]+\//, '');
document.writeln(s); // "ghi/jkl"

同样,这假设总是至少有两个/

如果文本总是像您当前的示例,您可以简单地使用substringindexOf从“/”的第二次出现开始剪切它。

否则/([^\\/]+\\/[^\\/]+\\/)/ ,或Blair的答案可能是一个很好的正则表达式。 或者/^([^\\/]+\\/[^\\/]+\\/)/如果它必须从字符串的开头开始。

我认为

yourstring.replace(/[a-z]+\/[a-z]+\/(.+)/g, "$1");

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM