Javascript 正则表达式匹配正斜杠或反斜杠
我有这样一个字符串:Javascript 正则表达式匹配正斜杠或反斜杠,javascript,regex,Javascript,Regex,我有这样一个字符串: whatever/aaazzzzz 有时是这样的字符串: whatever\bbbbzzzzz 当我匹配/或\ 我试过的正则表达式似乎有效 在中使用时,它与/一起使用,但与\不一起使用 有什么想法吗?用这个 var arr = str.split(/[\\|\/]/); var str='whatever\\bbbbzzzzz'; alert(str.split(/[\\\\\\\/]/)这里的问题不是正则表达式本身,而是JavaScript不隐式支持字符串文本(
whatever/aaazzzzz
有时是这样的字符串:
whatever\bbbbzzzzz
当我匹配/
或\
我试过的正则表达式似乎有效
在中使用时,它与/
一起使用,但与\
不一起使用
有什么想法吗?用这个
var arr = str.split(/[\\|\/]/);
var str='whatever\\bbbbzzzzz';
alert(str.split(/[\\\\\\\/]/)
这里的问题不是正则表达式本身,而是JavaScript不隐式支持字符串文本(即反斜杠被解释为打印文本而不是表示转义序列的文本。可以读取更多内容)这一不可避免的事实
从源代码以外的任何源派生的字符串在默认情况下被解释为文本,如中所示
函数splitTheString()
{
//测试=逃逸(“无论什么\aaaaaa”);
var test=document.getElementById(“strToSplit”).value;
a=测试分割(/(\\\\\/)/)[0];
警报(a);
}
拆分此字符串:
应该是test=“whatever\\aaaaaa”
(两条斜线)。添加实际的代码,这样我们就可以确定为什么不工作似乎有效:如果我只有aa\bb
而没有aa\\bb
,就像我说的那样,我没有\\@desesparta,(\\\\\\\\\\\\\/)将无法正确拆分,那么你必须使用/[\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\/]/
<script>
function splitTheString()
{
//test = escape("whatever\aaaaaa");
var test = document.getElementById("strToSplit").value;
a = test.split(/(\\|\/)/)[0];
alert(a);
}
</script>
<form>
Split this string:<br>
<input type="text" id="strToSplit">
<a href="javascript:splitTheString();">Split the string</a>
</form>