How do I say remove a number preceded by a non-digit and followed by a dash, but leave the preceding non-digit character?
RegExp: /[^D]4-/ String: http://localhost/images/4-6-.png Remove: 4-
The 4- should be removed and it should leave the preceding / or -
4-
/
-
This would work: /4-/ But it would also remove 14- or 44-
/4-/
14-
44-
http://jsfiddle.net/flackend/8s9X9/2/
var category_id = 4; var src = 'http://localhost/images/4-6-.png'; var regexp = new RegExp('[^\D]'+ category_id +'\-') $('p').append('regexp: '+ regexp +'<br>'); $('p').append(src +'<br>'); src = src.replace(regexp, ''); $('p').append(src);
You want [D] or [^d], but not [^D]. Regex is case-sensitive, d matches a digit, and D matches anything but a digit.
[D]
[^d]
[^D]
d
D
1.4m articles
1.4m replys
5 comments
57.0k users