Что нового

цифровое содержимое в скобках в конце слова

Rjevsky

Новичок
Сообщения
102
Репутация
4
Из слов и словосочетаний вида
тест(1)
Проверка знаний(21)
Важное значение(2)
Нужно получить:
1) текст до скобок
2) цифровое значение в скобках
 

WSWR

AutoIT Гуру
Сообщения
941
Репутация
361
Можно каждую строку разбить таким кодом:
Код:
#Include <Array.au3>
$sText = "Проверка знаний(21)"
$array = StringSplit($sText, "()")
_ArrayDisplay($array)
MsgBox(0, "Заголовок", $array[2])
MsgBox(0, "Заголовок", $array[3])
 

dwerf

Использует ArchLinux
Сообщения
478
Репутация
218
Код:
#include <Array.au3>

$sText = 'тест(1)'
$aResult = StringRegExp($sText, '(.+?)\((\d+)\)', 3)

_ArrayDisplay($aResult)
 

madmasles

Модератор
Глобальный модератор
Сообщения
7 790
Репутация
2 319
Rjevsky,
Можно так попробовать:
Код:
#include <Array.au3>

$sText = 'тест(1)' & @CRLF & _
		'Проверка знаний(21)' & @CRLF & _
		'Важное значение(2)'

$aTemp = StringSplit(StringStripCR($sText), @LF)

Dim $aRes[$aTemp[0] + 1][2] = [[$aTemp[0]]]
For $i = 1 To $aRes[0][0]
	$aRes[$i][0] = StringRegExpReplace($aTemp[$i], '\(.*\)', '')
	$aRes[$i][1] = StringRegExpReplace($aTemp[$i], '.*\([^\d]*|\)', '')
Next
_ArrayDisplay($aRes)
 
Верх