У меня есть вопрос, который я надеюсь кто-то может помочь с ...Perl - Regex для извлечения только через запятую струне
У меня есть переменная, которая содержит контент с веб-страницы (соскабливают с помощью WWW :: Mechanize).
Переменная содержит такие данные, как эти:
$var = "ewrfs sdfdsf cat_dog,horse,rabbit,chicken-pig"
$var = "fdsf iiukui aawwe dffg elephant,MOUSE_RAT,spider,lion-tiger hdsfds jdlkf sdf"
$var = "dsadp poids pewqwe ANTELOPE-GIRAFFE,frOG,fish,crab,kangaROO-KOALA sdfdsf hkew"
The только бит я заинтересован из приведенных выше примеров являются:
@array = ("cat_dog","horse","rabbit","chicken-pig")
@array = ("elephant","MOUSE_RAT","spider","lion-tiger")
@array = ("ANTELOPE-GIRAFFE","frOG","fish","crab","kangaROO-KOALA")
Проблема я имею:
Я пытаюсь извлечь только строки, разделенные запятой, из переменных, а затем сохранить их в массиве для использования позже.
Но какой лучший способ убедиться в том, что я получаю строки в начале (то есть cat_dog) и заканчиваю (то есть курица) из списка животных, разделенных запятыми, поскольку они не префикс/суффикс с запятая.
Также, как переменные будут содержать контент веб-страницы, это неизбежно, что там может быть также случаи, когда запятых сразу удалось пробелом, а затем другое слово, так как это правильный метод использования запятых в пунктах и предложениях ...
Например:
Saturn was long thought to be the only ringed planet, however, this is now known not to be the case.
^ ^
| |
note the spaces here and here
Я не заинтересован в каких-либо случаях, когда запятая с последующим пробелом (как показано выше).
Я заинтересован только в тех случаях, когда запятая не имеет пробел после него (т.е. cat_dog, лошадь, кролик, курица свинки)
Я испытанный ряд способов сделать это, но не может решить, как лучше построить регулярное выражение.
Это поможет, если вы добавили код у вас возникли проблемы с ... – pavel