我有一个 html 文件,我需要使用任何标签并在其中放入align='left'。
因此给出以下行:
<td><img alt="" src="oooh.html_files/px" style="width: 20px; height: 1px;"/></td>
我需要它来做:
<td align='left'><img alt="" src="oooh.html_files/px" style="width: 20px; height: 1px;"/></td>
如果它已经指定了对齐方式,我需要它保留它。因此给出这一行:
<tr><td width="50%"> </td><td align="center">
我需要它来做:
<tr><td width="50%" align='left'> </td><td align="center">
请注意,它将对齐方式放入第一个 td 中,但忽略第二个 td,因为它已经指定了对齐方式。
Ruby 可以用正则表达式实现吗?
我知道它并不真正值得在 html 中使用正则表达式..但基本上我只是在快速破解以克服另一个库中的错误。希望这个错误很快就会被修复,我就不用担心了! :)
最佳答案
#!/usr/bin/env ruby
require 'nokogiri'
doc = Nokogiri::XML('<tr><td width="50%"> </td><td align="center"></tr>')
(doc / '//td[not(@align)]').each {|td| td['align'] = 'left' }
puts doc
# <?xml version="1.0"?>
# <tr>
# <td width="50%" align="left"/>
# <td align="center"/>
# </tr>
看,妈妈!没有正则表达式!
如果您不关心正则表达式的话,这实际上只是一句台词。
关于ruby - 将对齐方式放入 <td> 标记的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2256472/