Найти Google Map Line ж / Nokogiri - PullRequest
0 голосов
/ 19 июля 2011

Используя nokogiri, мне нужно найти в HTML-коде что-то вроде:

new GLatLng(-14.468352,132.270434)

и затем присвоить значения широты и долготы в этом коде двум переменным.

1 Ответ

0 голосов
/ 20 июля 2011

Вы не показали нам ни одного примера HTML. Nokogiri, кажется, не тот инструмент для этой работы, если вы просто ищете простой текст. Вы можете просто сделать:

require 'open-uri'
html = open('/5788749/naiti-google-map-line-zh-nokogiri').read
match = /new GLatLng\((?<lat>.+?),(?<long>.+?)\)/.match html
p match[:lat].to_f
#=> -14.468352

Или, если вам нужен массив всех таких совпадений, скажем, на странице также есть new GLatLng(17.3,42.1):

matches = html.scan /new GLatLng\((.+?),(.+?)\)/
p matches
#=> [["-14.468352", "132.270434"],["17.3", "42.1"]]

Единственная причина, по которой вы можете захотеть использовать Nokogiri, заключается в том, чтобы ограничить ваш поиск определенным элементом HTML (например, некоторым <script> блоком).

...