在文件扩展名之前替换数字

时间:2016-04-07 12:36:22

标签: jquery regex

我想替换文件扩展名之前直接显示的数字。不幸的是,我的例子将替换所有数字。有没有办法在@IBAction func indexChanged(sender: UISegmentedControl) { let sortedViews = sender.subviews.sort( { $0.frame.origin.x < $1.frame.origin.x } ) for (index, view) in sortedViews.enumerate() { if index == sender.selectedSegmentIndex { view.tintColor = UIColor.blueColor() } else { view.tintColor = UIColor.lightGrayColor() } } } let sortedViews = segmentedControlOutletVariable.subviews.sort( { $0.frame.origin.x < $1.frame.origin.x } ) sortedViews[0].tintColor = UIColor.blueColor() 处拆分字符串然后再在/拆分它。

.

演示http://jsfiddle.net/6mBeQ/244/

2 个答案:

答案 0 :(得分:1)

使用positive lookahead assertion

txt = txt.replace(/\d+(?=\.gif$)/m,'999');

这应匹配前一个.gif之前存在的一个或多个数字字符,然后将这些匹配的字符替换为999

txt = txt.replace(/\d+(?=\.\w+$)/m,'999');

答案 1 :(得分:0)

不使用lookaroundcapturing groups的另一种方法是直接替换。

正则表达式: \d+\.gif

替换为:替换为您的号码(例如999)+ .gif。它将是999.gif

代码: txt = txt.replace(/\d+\.gif/,'999.gif');

<强> Regex101 Demo

<强> JS Fiddle