正则表达式匹配两个字符之间的字符串

时间:2018-08-13 11:26:00

标签: regex

假设我有一个包含文件名的字符串,该文件名包括宽度和高度。 例如。

  

“ en / text / org-affiliate-250x450.en.gif”

我怎样才能只得到“-”和“ x”包含的“ 250”,然后才得到“ x”和“。”包含的“ 450”。使用正则表达式?

我尝试遵循此答案,但没有运气。 Regular Expression to find a string included between two characters while EXCLUDING the delimiters

3 个答案:

答案 0 :(得分:1)

如果您使用的是R,则可以尝试以下解决方案

alert()

答案 1 :(得分:1)

使用后视和前瞻:

(?<=-|x)\d+(?=x|\.)
  • (?<=-|x)向后寻找-x
  • \d+匹配数字。
  • (?=x|\.)提前寻找x.

尝试使用正则表达式here

答案 2 :(得分:1)

使用正则表达式-(\d)+x(\d+)\.

var str = 'en/text/org-affiliate-250x450.en.gif';
var numbers = /-(\d+)x(\d+)\./.exec(str);
numbers = [parseInt(numbers[1]), parseInt(numbers[2])];
console.log(numbers);