Что нового

Помогите вырезать последнее слово в строчке

Centrinar

Новичок
Сообщения
100
Репутация
1
Строка hkcu\software\microsoft\winmine нужно только слово winmine. Спасибо!
 

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,322
Re: Помогите вырезать помледнее слово в строчке

Centrinar,
Код:
$sText = 'hkcu\software\microsoft\winmine'
$sRes = StringRegExpReplace($sText, '^.*\\', '')
MsgBox(64, 'Info', $sRes)
 

kaster

Мой Аватар, он лучший самый
Команда форума
Глобальный модератор
Сообщения
4,020
Репутация
626
Re: Помогите вырезать помледнее слово в строчке

Centrinar
перечитывай иногда то, что пишешь, и по возможности исправляй несуразности.
 

VladUs

Скриптер
Сообщения
621
Репутация
181
Re: Помогите вырезать помледнее слово в строчке

Или

Код:
$sStroka = StringSplit("hkcu\software\microsoft\winmine", "\")
MsgBox (64,"info", $sStroka[UBound($sStroka)-1])
 
Автор
C

Centrinar

Новичок
Сообщения
100
Репутация
1
еще маленький вопросик, а как проделать обратную процедуру, удалить последнее слово \winmine
 

kaster

Мой Аватар, он лучший самый
Команда форума
Глобальный модератор
Сообщения
4,020
Репутация
626
Код:
$sRes = StringRegExpReplace($sText, '\\[^\\]+$', '')



Добавлено:
Сообщение автоматически объединено:

либо без замены
Код:
$sText = 'hkcu\software\microsoft\winmine'
$sRes = StringRegExp($sText, '(.+)\\[^\\]+$', 1)
MsgBox(64, 'Info', $sRes[0])
 

CreatoR

Must AutoIt!
Команда форума
Администратор
Сообщения
8,671
Репутация
2,481
Kaster [?]
либо без замены
Либо без RegExp (чуть быстрее):

Код:
$sText = 'hkcu\software\microsoft\winmine'
$sRes = StringLeft($sText, StringInStr($sText, "\", 2, -1)-1)
MsgBox(64, 'Info', $sRes)


:smile:
 

Soderling

Новичок
Сообщения
29
Репутация
0
Здравствуйте. Подскажите как удалить все символы кроме последних 10?

На этом же примере:

Код:
$sText = 'hkcu\software\microsoft\winmine'
 

Soderling

Новичок
Сообщения
29
Репутация
0
Благодарю)) уже разобрался, не успел отписаться)

А возможно ли решить такую задачу:
Обрезать строку до определенного совпадения последовательности букв, в примере до "AOD64" и после этих букв отсчитать 10 символов вправо, а остальное удалить.

Код:
$sText = 'hdjjdj$&/ghjj/hfdbjm_AOD64_hjmvv/$&_ghjjvv' ; нужно обрезать строку так, что бы осталось "AOD64_hjmvv/$&"
 

CreatoR

Must AutoIt!
Команда форума
Администратор
Сообщения
8,671
Репутация
2,481
Ещё вариант:
Код:
$sText = 'hdjjdj$&/ghjj/hfdbjm_AOD64_hjmvv/$&_ghjjvv' ; нужно обрезать строку так, что бы осталось "AOD64_hjmvv/$&"
$sStr = StringMid($sText, StringInStr($sText, 'AOD64'), 14)
ConsoleWrite($sStr & @CRLF)
 

Soderling

Новичок
Сообщения
29
Репутация
0
Ещё вариант:
Код:
$sText = 'hdjjdj$&/ghjj/hfdbjm_AOD64_hjmvv/$&_ghjjvv' ; нужно обрезать строку так, что бы осталось "AOD64_hjmvv/$&"
$sStr = StringMid($sText, StringInStr($sText, 'AOD64'), 14)
ConsoleWrite($sStr & @CRLF)

Благодарю! то что нужно
Сообщение автоматически объединено:

Точнее вариант InnIа использовал) но CreatoR ваш вариант тоже работает, будет для общего развития)
 
Последнее редактирование:
Верх