Как извлечь текст из строки после обнаружения первого экземпляра повторения? - PullRequest
0 голосов
/ 24 сентября 2019

Я хочу извлечь исходную фразу из строки в ячейке Excel.

Например, у меня есть эта строка в ячейке: «у Мэри есть маленький ягненок, у Мэри есть маленький ягненок, у Мэри есть маленький ягненок ...»

Я хочу извлечьОригинальная фраза "у Марии есть маленький ягненок".

Как я могу это сделать?

Ответы [ 2 ]

0 голосов
/ 25 сентября 2019

Предполагая, что вопрос на самом деле касается VBA, вы можете использовать InStr (FullText, SearchedText), чтобы получить позицию первой искомой текстовой строки в строке.

Sub LambHunting()
 A = "mary has a little lamb"
 B = "mary has a little lamb mary has a little lamb mary has a little lamb..."
 C = "Mary HAD a little lamb; unfortunately mary has a little lamb no longer."
 Debug.Print "'" & A & "' is at position #" & InStr(B, A) & " in the string '" & B & "'"
 Debug.Print "'" & A & "' is at position #" & InStr(C, A) & " in the string '" & C & "'"
End Sub

Возвраты:

'mary has a little lamb' is at position #1 in the string 'mary has a little lamb mary has a little lamb mary has a little lamb...'
'mary has a little lamb' is at position #39 in the string 'Mary HAD a little lamb; unfortunately mary has a little lamb no longer.'
0 голосов
/ 24 сентября 2019

Попробуйте это;Предполагая, что у вас есть строка "у Мэри есть маленький ягненок, у Мэри есть маленький ягненок, у Мэри есть маленький ягненок ..." в ячейке B2, формула = MID (B2,1, SEARCH (MID (B2,1, FIND (""), B2) -1), B2, FIND ("", B2)) - 2) даст вам желаемый результат.Эта формула имеет ограничение, заключающееся в том, что первое слово не повторяется в исходной фразе.

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