Что нового

[RegExp] получить число из скобок

MockeR

Знающий
Сообщения
101
Репутация
14
Добры вечер :smile:
Мне нужно из этого:

6[8]46a sv8[1]5[6]1dfs[6][516][8]4asdv6[1]56[1]6[5]49[8]4[15]6[1]6[5]
[481]65[4]9 [8]4[6]1[6]5[4]41[6][49][846]516[516]46
165[4][1]6 8fvd4[651]6 5vsad4[651]5[6]16
1[5]16[54]654vs a6[5]1[65][16][16]1a sv6[1]651[651]1654[564]dfgd hg

вытащить число, которое находится в последних скобках. Желательно через StringRegExp.
 

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,322
MockeR,
Попробуйте так.
Код:
$sString = '6[8]46a sv8[1]5[6]1dfs[6][516][8]4asdv6[1]56[1]6[5]49[8]4[15]6[1]6[5]' & _
		'[481]65[4]9 [8]4[6]1[6]5[4]41[6][49][846]516[516]46' & _
		'165[4][1]6 8fvd4[651]6 5vsad4[651]5[6]16' & _
		'1[5]16[54]654vs a6[5]1[65][16][16]1a sv6[1]651[651]1654[564]dfgd hg'

ConsoleWrite(StringRegExpReplace($sString, '(?s).*\[(\d+)\].*', '$1') & @LF)
ConsoleWrite(StringRegExpReplace($sString, '(?s).*\[(\d+)\][^[\[\]]*$', '$1') & @LF)
;или так, без рег. выражений.
$iStart = StringInStr($sString, '[', 0, -1) + 1
$iEnd = StringInStr($sString, ']', 0, -1)
ConsoleWrite(StringMid($sString, $iStart, $iEnd - $iStart) & @LF)
 
Автор
M

MockeR

Знающий
Сообщения
101
Репутация
14
хм... как всё просто :laugh:
Спасибо :beer:
 
Верх