Имя: Пароль:
IT
 
Помогите составить регулярное выражение
,
0 Steel_Wheel
 
07.12.11
11:11
Есть строка "70 А. 602 000 B."
Помогите составить регулярное выражение такое, чтобы оно захватывало только "70" и "602 000" (внимание, между 602 и 000 -- неразрывный пробел). Цифры "70" и "602 000" даны сугубо для примера -- они могут быть любыми, а вот А и B присутствуют в строке постоянно.

Заранее большое спасибо
1 Лефмихалыч
 
07.12.11
11:17
(\d+)[\w|\s+]([\d|<НЕРАЗРЫВНЫЙПРОБЕЛ>]+)
2 Steel_Wheel
 
07.12.11
11:23
(1) Спасибо, работает.
3 Лефмихалыч
 
07.12.11
11:23
(2) Да ладно!..
не ожидал, если честно
4 Steel_Wheel
 
07.12.11
12:14
Блин, "Калькулятор regexp" показывает 2 матча, а в фреймворке только 1
5 Ненавижу 1С
 
гуру
07.12.11
12:16
(4) ленивые вычисления
6 Steel_Wheel
 
07.12.11
12:24
(5) А как примерно поправить?
7 Ненавижу 1С
 
гуру
07.12.11
12:29
((\d+)[\w|\s+]([\d|<НЕРАЗРЫВНЫЙПРОБЕЛ>]+))?
или так, хз если честно:
(\d+)[\w|\s+]([\d|<НЕРАЗРЫВНЫЙПРОБЕЛ>]+?)
8 Steel_Wheel
 
07.12.11
12:37
(7) Нифига не понимаю: в калькуляторе регулярных выражений все выражения захватывают 2 числа, во фреймворке выражения от Лефмихалыч захватывают только первое число, а твои захватывают цифру "5"...

Какой-то тут RegExp странный
9 Ненавижу 1С
 
гуру
07.12.11
12:42
а такое что выдает?

(\d|<НЕРАЗРЫВНЫЙПРОБЕЛ>)+(\d)
10 Steel_Wheel
 
07.12.11
12:50
Калькулятор дает 3 числа: 70, 602, 000
Фреймворк дает 70

Кстати, проверил: там обычный пробел
11 Ненавижу 1С
 
гуру
07.12.11
12:52
(\d+)(_?)(\d+)

где _-твой чудо пробел

калькулятор то какой?
12 Steel_Wheel
 
07.12.11
13:00
(11) Калькулятор http://gskinner.com/RegExr/
Фреймворк: HP Quick Test Pro (plain vbscript)

Выражение 65 дает
13 Ненавижу 1С
 
гуру
07.12.11
13:03
14 Steel_Wheel
 
07.12.11
13:06
(13) В том-то и дело, что калькулятор нормально выдает, а вот во фреймворке лажа какая-то (
15 Steel_Wheel
 
07.12.11
13:07
Первая цифра только в последнем примере
16 Ненавижу 1С
 
гуру
07.12.11
13:08
показывай как ты его юзаешь
17 Steel_Wheel
 
07.12.11
13:12
(16) Разобрался, во фреймворке флаг "Global" по умолчанию сброшен. А в калькуляторе установлен...

Пример (13), в частности, заработал.

Ненавижу 1С, Лефмихалыч, спасибо
18 Steel_Wheel
 
07.12.11
15:35
А можно ли через shell какой-нить regexp использовать?
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан