-1

の後にある単語に一致させたい">。これは私の例のテキストであり、一致するテキストです。

<a href="http://www.foo.bar">example_text (a)</a>

取得するテキスト:

example_text

これが私のコードです:

$page_html = Nokogiri::HTML.parse($browser.html)
$holder = $page_html.xpath('/html/body/div[2]/div[5]/div/table/tbody/tr[4]/td/a')
$user = $holder.match('(?<=\"\>)\w*')

そして私のエラー:

syntax error, unexpected tIDENTIFIER, expecting keyword_end
$user = $holder.match('(?<=\"\>)\w*')
      ^

その理由は、引用符が干渉していると推測しています。

4

2 に答える 2

1

ソースの前のどこかで閉じ括弧が欠落しているに違いありません。これは、キーワード end が欠落しているという意味です。

2.0.0p0 :004 > $holder = '<a href="http://www.foo.bar">example_text (a)</a>'
 => "<a href=\"http://www.foo.bar\">example_text (a)</a>" 
2.0.0p0 :005 > $user = $holder.match('(?<=\"\>)\w*')
 => #<MatchData "example_text"> 
于 2013-08-27T04:58:57.657 に答える