如果我有这样的段落:
<p class="text">ats hjda syd This is the story of a lost programmer and his doubts about javascript..</p>
如何使用javascript或jquery从所有p.text
中删除第一个字符,直到它遇到大写字符(在这种情况下为"T"(?我想,即使是regex也可以。
第一个大写字母之前的字符数是可变的。
第一个大写字母各不相同,每个段落都不同。
我知道如何编写删除字符直到遇到字符的版本,但从未处理过这样的可变大写字符情况。
更新:我必须实现我需要的另一种选择,就是计算第三个空格,因为大写字母总是在三个单词后面。
const paragraphs = document.querySelectorAll('p');
paragraphs.forEach(paragraph => paragraph.innerText = paragraph.innerText.replace(/.*?([A-Z].*)/, (a,b)=>b));
<p class="text">ats hjda syd This is the story of a lost programmer and his doubts about The language Javascript..</p>
<script>
{
let s = "<p class=ats hjda syd This is the story about javascript..</p>";
let p = /.*([A-Z].*)/;
let t = s.match(p);
if (t != null) {// OK
alert(t[1]); // extracted string
}
else alert('nok'); //no match
}
</script>