这可能是一个简单的但我是一个正则表达式的新手。
我希望使用正则表达式在页面上的textarea中选择每个段落的第一行。在想到我在那里之后,我遇到了一个问题。
使用http://gskinner.com/RegExr/我想出了这个:
/\r\r.*\r/g
然后我把它放到我的javascript中并在页面上运行:
var headingsArr = document.getElementById("text").value.match(/\r\r.*\r/g);
并且数组返回null。
我是否正确使用了正则表达式,如果是这样,我在javascript中使用它时会出错!?
谢谢
答案 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;
}