文字列から、指定した方向にある削除指定文字列を削除する
'++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
' 指定文字列削除
'++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Public Function F_String_ReturnDelete( _
ByVal aTarget As String, _
ByVal aDelete As String, ByVal aDelSpec As E_STRING_SPEC) As String
Dim wkRtn As String: wkRtn = aTarget
Dim wkLen As Long
Dim wkDelLen As Long
'文字列と削除文字がある場合
If aTarget <> "" And aDelete <> "" Then
'中間位置削除の場合
If M_Common.F_CheckBitOn(aDelSpec, E_STRING_SPEC_POS_MID) = True Then
wkRtn = Replace(aTarget, aDelete, "")
Else
wkLen = Len(aTarget)
wkDelLen = Len(aDelete)
'開始位置削除指定の場合
If M_Common.F_CheckBitOn(aDelSpec, E_STRING_SPEC_POS_START) = True Then
'開始位置に削除文字がある間ループ
Do While StrComp(Left(wkRtn, wkDelLen), aDelete, vbBinaryCompare) = 0
wkLen = wkLen - wkDelLen
wkRtn = Right(wkRtn, wkLen)
Loop
End If
'終了位置削除指定の場合
If M_Common.F_CheckBitOn(aDelSpec, E_STRING_SPEC_POS_END) = True Then
'終了位置に削除文字がある間ループ
Do While StrComp(Right(wkRtn, wkDelLen), aDelete, vbBinaryCompare) = 0
wkLen = wkLen - wkDelLen
wkRtn = Left(wkRtn, wkLen)
Loop
End If
End If
End If
F_String_ReturnDelete = wkRtn
End Function