RegExp

3 отговора 155 прегледа
#1

RegExp

Правя един HTML spell checker като ползвам RegExp за replace. Проблемът ми е следният - ако намеря грешна дума, примерно "jscript" я подчертавам. Обаче ако в същото време имам и линк, нещо от рода -
<A HREF="[линк]">jscript.com</A> как да го накарам да не ми match-ва jscript, когато след него има .com.

Не става със (\bjscript\b)[^\.], тогава не ми мачва jscript.com, обаче ми мачва "jscript," във "jscript, vbscript, etc." примерно.

Целта оправдава средствата
Отговор
в отговор на Lupi #2

Re: RegExp

извинявай, но не е ли по-добре първо да си отделиш текста който се намира между таговете и към него да приложиш валидизацията. защото текста извън таговете е трудно да предположиш какъв ще е.
а иначе и аз стигнах до предложеното от теб решение :)

# лудите, лудите... те да са живи!
Отговор
в отговор на enchanted #3

Re: RegExp

Аз текста съм го отделил, първо разлагам чистия текст на думи и ги проверявам тях, обаче искам да запазя HTML форматирането, затова replace-вам в HTML-ския текст. Има и по-дърварски метод без RegExp, ама мен ми се ще да е с RegExp

Целта оправдава средствата
Отговор
в отговор на Lupi #4

-

((^| )jscript) матчва:
jscript
jscript
<A HREF="[линк]">jscript.com</A>
vbscript
javascript

foojscript
foojscript

bofh
Отговор