-Поиск по дневнику

Поиск сообщений в rss_sql_ru_access_programming

 -Подписка по e-mail

 

 -Постоянные читатели

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 16.03.2006
Записей:
Комментариев:
Написано: 4


RegExp - паттерны, matches...

Понедельник, 15 Февраля 2016 г. 00:58 + в цитатник
Наше вам с кисточкой... ))

!) Не подскажете с паттерном?
Нужно за один проход забрать оттуда сразу Оператора, Номер, Стоимость...
Отдельные вроде получились, не понимаю уже, как с остальными...
'телеф номер:
p = "\b[8|\+7][-.]?\d{3}[-.]?\d{3}[-.]?\d{4}\b"

p = p & "(.{10,30})[Руб.]"

(Кажется, как-то можно было по submatches, или не пойму...)
2) С кодировкой источника что-то в итоге не так
+ source
		
		</p>
		<p> </p>
		</td><td> </td></tr><tr><td width="46%" valign="top">
		<u>Билайн 8-965-117-8558</u>
		<p align="right">Цена: <b>999 Руб.</b>
			
		<form action="/">
			<input type="hidden" name="type" value="buy" />
			<input type="hidden" name="buy_id" value="120085532" />
			<div align="right"><input type="submit" value="Купить" style="font-size:10px;" /></div>
		</form>	
		
		</p>
		<p> </p>
		</td><td> </td><td width="46%" valign="top">
		<u>Билайн 8-965-117-8668</u>
		<p align="right">Цена: <b>999 Руб.</b>
			
		<form action="/">
			<input type="hidden" name="type" value="buy" />
			<input type="hidden" name="buy_id" value="120085533" />
			<div align="right"><input type="submit" value="Купить" style="font-size:10px;" /></div>
		</form>	
		
		</p>
		<p> </p>
		</td><td> </td></tr><tr><td width="46%" valign="top">
		<u>Билайн 8-965-118-6556</u>
		<p align="right">Цена: <b>999 Руб.</b>
			
		<form action="/">
			<input type="hidden" name="type" value="buy" />
			<input type="hidden" name="buy_id" value="120085534" />
			<div align="right"><input type="submit" value="Купить" style="font-size:10px;" /></div>
		</form>	
		
		</p>
		<p> </p>
		</td><td> </td><td width="46%" valign="top">
		<u>Билайн 8-965-119-0660</u>
		<p align="right">Цена: <b>999 Руб.</b>

+
Function HtmlParser(ByVal str As String)
'   MsgBox "Test-" & oRgx.Test("    " & _
'    "

" & _
' "
" & _ ' "МегаФон 8-926-795-1144" & _ ' "

1999 Руб.")

Dim i As Integer, s As String Dim fso, fld, f, ofsoTxtStream Dim oRgx, orgxMatch, orgxMatcheS Set oRgx = CreateObject("VBScript.RegExp") Set fso = CreateObject("Scripting.FileSystemObject") Set f = fso.GetFile(str) Set ofsoTxtStream = f.OpenAsTextStream(1) 'читаем файл в поток, поток в переменную: s = ofsoTxtStream.readall(): ofsoTxtStream.Close ' 'Паттерны: Dim p As String 'телеф номер: p = "\b[8|\+7][-.]?\d{3}[-.]?\d{3}[-.]?\d{4}\b" p = p & "(.{10,30})[Руб.]" oRgx.Global = True oRgx.ignorecase = False oRgx.Multiline = True oRgx.pattern = p 'ТЕСТ: ' MsgBox "Test-" & oRgx.Test(" " & _ ' "

" & _
' "
" & _ ' "МегаФон 8-926-795-1144" & _ ' "

1999 Руб.")

Set orgxMatcheS = oRgx.Execute(s) Debug.Print orgxMatcheS.Count For i = 0 To orgxMatcheS.Count - 1 Set orgxMatch = orgxMatcheS.Item(i) Debug.Print "#############" Debug.Print orgxMatch.FirstIndex Debug.Print orgxMatch.Length Debug.Print "------------" ' Debug.Print orgxMatcheS.Value Debug.Print orgxMatcheS.Count ''''''' Debug.Print orgxMatcheS.Item(i) Debug.Print "============" Next MsgBox "!" Set fso = Nothing: Set fld = Nothing: Set ofsoTxtStream = Nothing: Set f = Nothing Set oRgx = Nothing: Set orgxMatcheS = Nothing: Set orgxMatch = Nothing End Function

http://www.sql.ru/forum/1200561/regexp-patterny-matches


 

Добавить комментарий:
Текст комментария: смайлики

Проверка орфографии: (найти ошибки)

Прикрепить картинку:

 Переводить URL в ссылку
 Подписаться на комментарии
 Подписать картинку