Yahoo Pipes и regex: почему это работает только для моего первого элемента? - PullRequest
1 голос
/ 29 сентября 2011

Вот мой канал: http://pipes.yahoo.com/pipes/pipe.info?_id=a732be6cf2b7cb92cec5f9ee6ebca756

В настоящее время я пытаюсь получить часть перед первым пробелом для моего item.url, а вторая часть будет названием.

Дляэкземпляр, первый элемент:

http://carto1.wallonie.be/documents/terrils/fiche_terril.idc?TERRIL_id=1 Crachet 7/12

Ожидаемый результат - получить "Crachet 7/12" в качестве заголовка, а другую часть - в качестве ссылки.

Мой запрос регулярного выражения "([^\s]+)"кажется, работает только для моего первого элемента, я не понимаю, почему, поскольку все элементы отформатированы одинаково.

Большое спасибо за любую помощь!

РЕДАКТИРОВАТЬ: Изображения для пониманиялучше:

ДО РЕГЭКСА enter image description here

ПОСЛЕ РЕГЭКСА enter image description here

Попытка проверить гсимвол enter image description here

1 Ответ

1 голос
/ 29 сентября 2011

Вы можете использовать \S+ вместо [^\s]+. Кроме того, вам нужно указать флаг "global" или двигатель regex останавливается после первого успешного совпадения. Чтобы сопоставить только первую непробельную часть строки, используйте якорь ^ с флагом «multiline»:

/^\S+/gm

или

new RegExp("^\\S+", "gm")

В вашем случае вам необходимо установить соответствующие флажки.

...