Добавить слово до и после строки - PullRequest
0 голосов
/ 21 июня 2019

Как я могу добавить 2 слова перед и после строки с регулярным выражением?

Пример:

hi1, hi2 6d371555e08ba2b2397fd44a0db31605e7def831585c4c11dbb21c70d89e3b3551350e36d2cef84097077a4f5f12e5ee359625ec0f776403895039c4442860fa9968827ab119c8e8362c8a5cbef4389c2c36a08eda30ce091fe9a8e19f9eec0d , HI3

регулярное выражение для сопоставления строки: \b[A-Fa-f0-9]{64}\b

Строка: 6d371555e08ba2b2397fd44a0db31605e7def831585c4c11dbb21c70d89e3b3551350e36d2cef84097077a4f5f12e5ee359625ec0f776403895039c4442860fa9968827ab119c8e8362c8a5cbef4389c2c36a08eda30ce091fe9a8e19f9eec0d

Я хочу добавить: hi1, hi2, hi3.

Ответы [ 2 ]

1 голос
/ 21 июня 2019

Не зная, что сопоставить, вот пример:

$str = 'klpo6d371555e08ba2b2397fd44a0db31605e7def831585c4c11dbb21c70d89e3b3551350e36d2cef84097077a4f5f12e5ee359625ec0f776403895039c4442860fa9968827ab119c8e8362c8a5cbef4389c2c36a08eda30ce091fe9a8e19f9eec0dputy'
if ($str -match '\b[A-Fa-f0-9]{64}\b'){
    'hi1,hi2,{0},hi3' -f $matches[0]
}

1 голос
/ 21 июня 2019

Используйте $& для ссылки на совпадение в строке замены:

$s = '6d37...ec0d'
$s -replace '\b[a-f0-9]{64}\b', 'hi1,hi2,$&,hi3'

Прописные символы в выражении совпадения не требуются, поскольку операторы PowerShell (в данном случае -replace) нечувствительны к регистру.по умолчанию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...