文字列内の任意の文字を定義するために使用できる記号/文字を単純に考えています...
基本的に、RR 2、RR#2、RR1、RR 1 などのレコードが多数あり、RR の後に何かを定義し、何も置き換えないシンボルを使用したいと考えています。SQLでは「%」記号であることは知っていますが、VBAではわかりません。
ArcGIS フィールド計算機で置換機能を使用しています。
検索してみましたが、探している答えを見つけるための適切な質問が見つかりません。
何か案は?
文字列内の任意の文字を定義するために使用できる記号/文字を単純に考えています...
基本的に、RR 2、RR#2、RR1、RR 1 などのレコードが多数あり、RR の後に何かを定義し、何も置き換えないシンボルを使用したいと考えています。SQLでは「%」記号であることは知っていますが、VBAではわかりません。
ArcGIS フィールド計算機で置換機能を使用しています。
検索してみましたが、探している答えを見つけるための適切な質問が見つかりません。
何か案は?
VBAかVB.Netか不明なので、
Test サブに示されている形式を使用して ChopString 関数を使用するだけの VBA の回答を次に示します。
Function ChopString(str As String, after As String, Optional caseInsensitive As Boolean = True) As String
Dim x As Long
If caseInsensitive Then
x = InStr(1, str, after, vbTextCompare)
Else
x = InStr(1, str, after, vbBinaryCompare)
End If
If x Then
str = Left(str, x + Len(after) - 1)
End If
ChopString = str
End Function
Sub Test()
Dim OriginalString As String
Dim choppedString As String
OriginalString = "1234RR this will be chopped"
choppedString = ChopString(OriginalString, "RR")
MsgBox choppedString
End Sub
残念ながら、.netREPLACE()
関数はワイルドカード文字をサポートしていません。ここで説明する関数を使用できますが、少し時間がかかります。