Javascript JS正则表达式不工作

Javascript JS正则表达式不工作,javascript,regex,Javascript,Regex,我有以下代码: searchSt=“测试”,搜索的=“输入” 返回空值,但我确信有以下文字: html: Hello World Test Write SomeThing here is Words do it. hit in me 怎么了?在RegExp构造函数中放置一个字符串正则表达式(如果需要,替换字符): 带倒杆: var re = new RegExp("\\d"); // => /\d/ 这看起来不像是正则表达式的问题。可能还有别的事。 在这里测试 输出 'Test Wr

我有以下代码:

searchSt=“测试”,搜索的=“输入”

返回空值,但我确信有以下文字: html:

Hello World
Test Write SomeThing here is Words do it. hit in me 

怎么了?

在RegExp构造函数中放置一个字符串正则表达式(如果需要,替换字符):

带倒杆:

var re = new RegExp("\\d"); // => /\d/

这看起来不像是正则表达式的问题。可能还有别的事。
在这里测试

输出

'Test Write SomeThing here is Words do it. hit in'
' Write SomeThing here is Words do it. hit'

如果您使用的是JQuery,则代码应如下所示:

<html>
<head>
<title>Test</title>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<body>
Hello World
Test Write SomeThing here is Words do it. hit in me 
</body>
</html>
<script type="text/javascript">
    var searchSt = "Test", searchEd = " in";
    var html = $('body').clone().children().remove().end().text();

            alert(searchSt+"|"+searchEd);
            var patt = searchSt+"(.*)"+searchEd;
            var result = html.match(patt);
            alert(result[0]);//returns null

</script>

试验
你好,世界
试着在这里写点什么,就是用词去做。打我
var searchSt=“Test”,searchEd=“in”;
var html=$('body').clone().children().remove().end().text();
警报(searchSt+“|”+已搜索);
var patt=searchSt+“(.*)”+已搜索;
var result=html.match(patt);
警报(结果[0])//返回空值
确保脚本放置在body标记下方。如果在上面,则找不到body标签。我还改变了获取body$('body')的方式


regex没有问题,我认为这是因为in(searchEd)之前的空格。不,解析器将修复这个问题,并轻轻地忽略脚本被错误地放在
正文
(甚至是
html
)之外的事实。改用
$.ready()
var html = "Hello World\
Test Write SomeThing here is Words do it. hit in me";

var searchSt = "Test", searchEd = " in";

var patt = searchSt+"(.*)"+searchEd;
var result = html.match(patt);

print ("'" + result[0] + "'");
print ("'" + result[1] + "'");
'Test Write SomeThing here is Words do it. hit in'
' Write SomeThing here is Words do it. hit'
<html>
<head>
<title>Test</title>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<body>
Hello World
Test Write SomeThing here is Words do it. hit in me 
</body>
</html>
<script type="text/javascript">
    var searchSt = "Test", searchEd = " in";
    var html = $('body').clone().children().remove().end().text();

            alert(searchSt+"|"+searchEd);
            var patt = searchSt+"(.*)"+searchEd;
            var result = html.match(patt);
            alert(result[0]);//returns null

</script>