Javascript RegEx查找每个段落的第一行

时间:2011-12-22 15:07:56

标签: javascript regex

这可能是一个简单的但我是一个正则表达式的新手。

我希望使用正则表达式在页面上的textarea中选择每个段落的第一行。在想到我在那里之后,我遇到了一个问题。

使用http://gskinner.com/RegExr/我想出了这个:

/\r\r.*\r/g

然后我把它放到我的javascript中并在页面上运行:

var headingsArr = document.getElementById("text").value.match(/\r\r.*\r/g);

并且数组返回null。

我是否正确使用了正则表达式,如果是这样,我在javascript中使用它时会出错!?

谢谢

2 个答案:

答案 0 :(得分:2)

这取决于你的换行符是什么。我认为你最好选择

/(?:\r\n|[\r\n]){2}.*(?:\r\n|[\r\n])/g

我知道在Regexr中只有\r是换行符。但在Windows中,通常使用\r\n,但在。* ix下通常只有\n

所以(?:\r\n|[\r\n])是一种替代方式,如果找不到匹配\r\n\r,它首先会尝试匹配\n

答案 1 :(得分:0)

为了未来的搜索者,如果你只需要设置第一行文本的样式,你可以使用css pseudoclass :: first-line:

textarea::first-line { 
    background-color: yellow;
}

http://www.w3schools.com/cssref/sel_firstline.asp