FormattedText.Find Method

FormattedTextFind Method

Returns a text range identifying the first occurrence of the given string within the text, starting from a given index.

Namespace: Autodesk.Revit.DB
Assembly: RevitAPI (in RevitAPI.dll) Version: 25.0.0.0 (25.0.0.0)
Syntax
public TextRange Find(
	string searchString,
	int startIndex,
	bool matchCase,
	bool matchWholeWord
)
Public Function Find ( 
	searchString As String,
	startIndex As Integer,
	matchCase As Boolean,
	matchWholeWord As Boolean
) As TextRange
public:
TextRange^ Find(
	String^ searchString, 
	int startIndex, 
	bool matchCase, 
	bool matchWholeWord
)
member Find : 
        searchString : string * 
        startIndex : int * 
        matchCase : bool * 
        matchWholeWord : bool -> TextRange 

Parameters

searchString  String
The text to search for.
startIndex  Int32
The start index to search within the text.
matchCase  Boolean
True if the case must match when searching the formatted text, false to search in a case-insensitive manner.
matchWholeWord  Boolean
True if the match must be a whole word when searching the formatted text, false otherwise.

Return Value

TextRange
The text range identified.
Exceptions
ExceptionCondition
ArgumentException searchString is an empty string. -or- searchString contains invalid characters such as a newline character.
ArgumentNullException A non-optional argument was null
ArgumentOutOfRangeException The given value for startIndex is negative.
Remarks
Returns an empty text range:
  • if the given string cannot be found in the text.
  • if the given start index is beyond the length of the entire text.
The search can be case-sensitive or case-insensitive. The search can be set to match whole words or part of words.
Example
#region Autodesk.Revit.DB.FormattedText.#ctor(System.String)
public void ReformatText(TextNote textNote, string textToChange)
{
    String plainText = textNote.Text;
    FormattedText formattedText = new FormattedText(plainText);

    TextRange foundRange = formattedText.Find(textToChange, 0, false, true);
    while (foundRange.Length > 0)
    {
        formattedText.SetBoldStatus(foundRange, true);
        foundRange = formattedText.Find(textToChange, foundRange.End, false, true);
    }

    textNote.SetFormattedText(formattedText);
}
#endregion
#Region "Autodesk.Revit.DB.FormattedText.#ctor(System.String)"
        Public Sub ReformatText(textNote As TextNote, textToChange As String)
            Dim plainText As [String] = textNote.Text
            Dim formattedText As New FormattedText(plainText)

            Dim foundRange As TextRange = formattedText.Find(textToChange, 0, False, True)
            While foundRange.Length > 0
                formattedText.SetBoldStatus(foundRange, True)
                foundRange = formattedText.Find(textToChange, foundRange.[End], False, True)
            End While

            textNote.SetFormattedText(formattedText)
        End Sub
#End Region

No code example is currently available or this language may not be supported.

No code example is currently available or this language may not be supported.

See Also