Tujuan: Keluarkan ruang di sebelah kanan pendakap kerinting.
Yang berikut boleh digunakan:
//Yang pertama
var a = "Saya adalah ruang {Saya adalah parameter}. Terdapat ruang di hadapan saya {Saya adalah parameter}. Ruang di hadapan saya tidak padankan";
hand_trim1(a);
function hand_trim1 (str){
return str.replace(/(?:\})\s+/g,'}');
}
//Yang kedua
var a = "Saya adalah ruang {Saya adalah parameter}. Terdapat ruang sebelum {Saya adalah parameter}. Ruang sebelum saya tidak sepadan";
hand_trim2(a);
fungsi hand_trim2(str){
return str.replace(/}\s+/g,'}');
}
//Yang ketiga (Mengapa ini tidak sepadan???????)
var a = "Saya adalah ruang {saya parameter} Ada ruang di hadapan saya {saya adalah parameter}" Ruang putih tidak sepadan ";
hand_trim3(a);
function hand_trim3(str){
return str.replace(/(?=\})\s+/g,'');
}
Pratonton ke hadapan ialah lebar sifar, yang bermaksud lebar ialah 0, tetapi sepadan dengan kedudukan, selagi kedudukan itu berpuas hati, dan tidak sepadan dengan kandungan tertentu
(?=}) Kedudukan padanan hendaklah
} dan aksara kosong Oleh itu, kedudukan ini tidak wujud sama sekali, jadi ia tidak sepadan Malah, ini kedudukan hendaklah di sebelah kiri Ia ialah
negatif🎜 dan tidak boleh meramalkan jenis aksara pada sebelah kiri. 🎜}
selepas kedudukan ini(?=})
匹配的位置应该是在这个位置后面有一个}
;s+
表示从这个位置起,后面跟着空白符;所以,满足上面两个条件的位置是这个位置后面的字符即是
}
,又是空白符
,因此,这种位置根本不存在,所以不匹配;其实这个位置应该是左边是一个
}
,右边是s+
s+
bermaksud bermula dari kedudukan ini, diikuti dengan aksara kosong Jadi, dua syarat di atas dipenuhi kedudukan ialah aksara selepas kedudukan ini ialah}
, dan sebelah kanan ialahs+
, tetapi js tidak mempunyai penegasan