Запуск нового вопроса, так как мой другой вопрос решил другую проблему с регулярным выражением.Проблема с регулярным выражением с использованием ICU regex/regexkitlite
Вот мое регулярное выражение:
(?i)\\d{1,4}(?<!v(?:ol)?\\.?\\s?)(?![^\\(]*\\))
Regex разделить для ясности:
(?i)
- регистронезависимы
\\d{1,4}
- число с 1-4 цифр
(?<!v(?:ol)?\\.?\\s?)
в номер не может предшествовать 'v', 'v.', 'vol', 'vol.', с o r без пробела на конце.
(?![^\\(]*\\))
- Число не может быть в круглых скобках.
Все это работает, за исключением 'vol.' бит .:
@"Words words 342 words (2342) (words 2 words) (words).ext"
результат 342 - правильный.
@"Words - words words (2010) (words 2 words) (words).ext"
результат nil - правильный.
@"words words v34 35.ext"
результат 34 - неверно.
@"Words vol.342 343 (1234) (3 words) (desc).ext"
результат 342 - неверно.
Что я делаю неправильно с моим "vol." раздел?
Не работает, боюсь. Кроме того, по последнему вопросу, который я поднял, кто-то сказал, что следы должны появиться после номера. Теперь я не знаю, что думать! – 2010-11-24 18:13:01