我有以下正则表达式:
[^0-9+-]|(?<=.)[+-]
此正则表达式匹配非数字,而不是+
和-
或+
/ -
前面的内容。但是,JavaScript正则表达式不支持正向lookbehind。我怎样才能使它发挥作用?
答案 0 :(得分:3)
<option value="{{Request::url().'/'. $uploaded_segment->id .'/'}}"></option>
<script>
$(function() {
// bind change event to select
var campaign_name = $("#campaign_name").val();
console.log(campaign_name);
$('#uploaded_segment_id').on('change', function() {
var url = $(this).val() + campaign_name; // get selected value
console.log(url);
if (url) { // require a URL
window.location = url; // redirect
}
return false;
});
});
lookbehind只是确保后续模式不位于字符串的开头。在JS中,使用(?<=.)
lookahead:
(?!^)
请参阅regex demo(参见original regex demo)。