假设我有一个这样的字符串:
var str = "/abcd/efgh/ijkl/xxx-1/xxx-2";
Run Code Online (Sandbox Code Playgroud)
我如何使用Javascript和/或jQuery删除部分str开头xxx,直到结束str?
Wil*_*ill 31
str.substring( 0, str.indexOf( "xxx" ) );
Run Code Online (Sandbox Code Playgroud)
只是:
s.substring(0, s.indexOf("xxx"))
Run Code Online (Sandbox Code Playgroud)
处理无效输入和缺少匹配模式的更安全版本将是:
function trump(str, pattern) {
var trumped = ""; // default return for invalid string and pattern
if (str && str.length) {
trumped = str;
if (pattern && pattern.length) {
var idx = str.indexOf(pattern);
if (idx != -1) {
trumped = str.substring(0, idx);
}
}
}
return (trumped);
}
Run Code Online (Sandbox Code Playgroud)
你打电话给谁:
var s = trump("/abcd/efgh/ijkl/xxx-1/xxx-2", "xxx");
Run Code Online (Sandbox Code Playgroud)
小智 5
尝试使用string.slice(start, end):
如果您知道要删除的确切字符数,请从示例中:
var str = "/abcd/efgh/ijkl/xxx-1/xxx-2";
new_str = str.slice(0, -11);
Run Code Online (Sandbox Code Playgroud)
这会导致 str_new == '/abcd/efgh/ijkl/'
为什么这很有用:
如果'xxx'指的是任何字符串(如 OP 所说),即:'abc'、'1k3' 等,并且您事先不知道它们可能是什么(即:不是常量),则接受的答案,以及其他大多数将不起作用。
| 归档时间: |
|
| 查看次数: |
27342 次 |
| 最近记录: |