2010-09-18 2 views
0
thecompletestring

должен соответствовать complete
thecompletelystring не должен соответствовать complete
theuncompletestring не должны совпадать с complete
theuncompletelystring не должны совпадать с completeматча слово, если не внутри другого слова

Я попытался границы слова, но они не работают в URL-адресах.

У меня есть список слов в массиве, одно слово, один элемент.

Как совместить слово, если оно не внутри другого слова?

+0

Возможны ли все словарные слова в вашем URL-адресе, или у вас есть ограниченный набор слов на выбор? – Kobi

+0

любое слово в США может быть в URL-адресе –

+0

Вы не только не можете делать это с помощью регулярных выражений, но я присутствовал на исследовательских презентациях по теме разбора санскрита, что сложно, потому что, по-видимому, оно написано без пробелов. Это использовало грамматику для устранения неоднозначности слов, хотя, возможно, больше, чем вы хотите. –

ответ

4

Это не может быть сделано с регулярным выражением. Чтобы успешно различать эти случаи, вам нужно написать что-то, что понимает английский язык. Это, очевидно, будет нелегко сделать правильно.

Чтобы приблизиться, вы можете использовать словарь слов и посмотреть, может ли строка быть разделена на слова в этом словаре словом, которое вы ищете как одно из слов. Это не будет учитывать опечатки или недоразумения или два слова, случайно считающиеся одним. Для этого вам понадобится то, что действительно говорит на человеческом языке.

Смежные вопросы