[言語比較]検索される文字値の検索値より左側

C#

○番目の検索値より左側を返すユーザー関数です

/// <summary>
/// ○番目のキーより左側
/// </summary>
/// <returns>さがす文字列より左側</returns>
/// <param name="source">検索される値</param>
/// <param name="key">検索値</param>
/// <param name="nth">何番目の検索値?(1-)</param>
string StrLeft(string source, string key, int nth = 1)
{
	string result = source;
	if(1 > nth)
	{
		result = @"";
		return result;
	}
	int start = 0;
	int next;
	for(int i = 1; i < nth; i++)
	{
		next = source.IndexOf(key, start, StringComparison.CurrentCultureIgnoreCase);
		if(0 > next)
		{
			break;
		}
		result = source.Substring(0, next);
		start = next + key.Length;
	}
	return result;
}

Excel

最初の検索値より左側を返す式はこちらです

=LET(VVALUE,検索される値,VKEY,検索値,VERROR,エラー時の値,IFERROR(LEFT(VVALUE,FIND(VKEY,VVALUE)-1),VERROR))

最後の検索値より左側を返す式はこちらです(LETでまとめていません)

=LEFT(検索される値,FIND(仮の検索値,SUBSTITUTE(検索される値,検索値,仮の検索値,LEN(検索される値)-LEN(SUBSTITUTE(検索される値,検索値,"")))-1)

Lotus Script 言語

左側から検索される値を検索します
文字値 = StrLeft (検索される値,検索値,比較方法,何番目の検索値?)
文字値 = StrLeft (検索される値,検索値,比較方法)
文字値 = StrLeft (検索される値,検索値)

右側から検索される値を検索します
文字値 = StrLeftBack (検索される値,検索値,比較方法,何番目の検索値?)
文字値 = StrLeftBack (検索される値,検索値,比較方法)
文字値 = StrLeftBack (検索される値,検索値)

比較方法
0 = 大文字小文字、全角半角を区別します
1 = 大文字小文字を区別しません
4 = 全角半角を区別しません
5 = 大文字小文字、全角半角を区別しません

戻り値には検索値を含みません
例: {ABCAB} = Strleft ({ABCABC},{c},1,2)

Lotus 式言語

左側から検索される値を検索します
文字値 = @Left (検索される値,検索値)

右側から検索される値を検索します
文字値 = @LeftBack (検索される値,検索値)

戻り値には検索値を含みません
例: {AB} = @Left ({ABCABC},{C})

大文字小文字、全角半角を区別します
例: {ABCab} = @Left ({ABCabc},{c})