2012-01-11 73 views
0

创建文件名:正则表达式来自鉴于这种输入图片的alt标签

<IMG alt="Just do it." src="http://25.media.moo.com/moo_kjasdf0nd_500.jpg"> 

我怎样才能作为输出:

Just-do-it.jpg 
+0

这是允许的正则表达式的应用程序....我可以拉动多个变量通过在它们周围放置括号,然后连接它们,如$ 1 $ 2等。 – Eric 2012-01-11 19:04:13

回答

1

下面是使用Python的再一个解决方案:

>>> import re 
>>> input = '''<IMG alt="Just do it." src="http://25.media.moo.com/moo_kjasdf0nd_500.jpg">''' 
>>> pattern = '''.*alt="([^"]*).*src=".*([.][^.]+)"''' 
>>> re.match(pattern,input).groups() 
('Just do it.', '.jpg') 
>>> 

我会离开组装的部件作为一个练习:)

+0

谢谢,尽管我想在正则表达式中替换一个空格 - – Eric 2012-01-11 19:12:25

+0

与正则表达式相比,使用字符串操作更容易,至少在Python中。 – 2012-01-11 19:54:19

1

我觉得正则表达式是没有必要为这个。

只需以正确的方式解析字符串即可。

  1. 首先,去掉'<','>'和标签名称。
  2. 然后用空格分割剩下的部分。
  3. 按'='拆分每个部分以获取属性名称和值。
  4. 然后找出属性名称为'alt'和'src'的文件,然后合并它们的值以获取文件名。