我需要正则表达式的帮助。我必须匹配" {{"在字符串的开头但不是" {{{"。我尝试使用var postresponse;
var initpost=post('findpics.php'); //fails 1st click if i remove this
function post(php,vars){
$.post(php,vars,function(data){
postresponse=data;
})
return postresponse;
}
$uploadpic.click(function(){
var pics_array=post('findpics.php').split(',');
$pics.empty();
$.each(pics_array, function(val,text) {
$pics.append( $('<option></option>').val(text).html(text) )});
$picbox1.attr('src','/contentuploads/'+$('#pics option:selected').text());
$dgbox.fadeIn(750);
}
);
,但它匹配&#34; {{{&#34;。我试图匹配&#34; {{{&#34;使用^[{]{2}
,但我不知道如何匹配&#34; {{&#34;再次。
我知道我可以通过if语句解决它。但我想在正则表达式中一次性完成。有什么想法吗?
答案 0 :(得分:1)
^{{[^{]
或^[{]{2}[^{]
都可以使用
^ asserts position at start of a line
{{ matches the characters {{ literally (case sensitive)
Match a single character not present in the list below [^{]
{ matches the character { literally (case sensitive)
答案 1 :(得分:1)
使用否定前瞻:
const re = /^{{(?!{)/;
console.log("{{{".match(re));
console.log("{{a".match(re));