Sub test()
Dim strFound As String
Text = "Y:\master-documentation\azat\dp\tab\25mg\2-drug-product\azat-tab-25mg-dp-1-bmi-[d-6475703-01-11].pdf"
strFound = Split(Text, "\")(7)
End Sub
Option Explicit
Function Meds(S As String) As String
Dim S1 As Variant, S2 As Variant
S1 = Split(S, "\")
S2 = Split(S1(UBound(S1)), "-")
ReDim Preserve S2(0 To 2)
Meds = Join(S2, "-")
End Function
4 回答
split函数将字符串拆分为任何大小所需的数组 . Split的第一个参数是要拆分的文本,第二个是分隔符 .
如果您在单元格A1中有数据,则以下工作表公式将在第7个“\”之后提取所有内容
=REPLACE(A1,1,FIND("^^",SUBSTITUTE(A1,"\","^^",7)),"")
SUBSTITUTE
函数用"^^"
替换第7个"\"
[使用您知道不会出现在数据中的任何字符或字符组合]...然后
FIND
函数找到"^^"
的位置,并允许REPLACE
函数替换这些字符,之前没有任何内容 .InStrRev
找到从结尾开始搜索的字符串的第一个出现位置 .回来
从你的原始字符串中,我返回了从 last ""到 third "-"的所有内容 .
工作表Excel功能:
用户定义的功能: