From cb9d3b1a2c2c59c368f6121a16a9ab928b0ff951 Mon Sep 17 00:00:00 2001 From: Bruce Hill Date: Sun, 23 Nov 2025 00:35:05 -0500 Subject: Added Text.find(text, target, start=1) --- api/text.yaml | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) (limited to 'api/text.yaml') diff --git a/api/text.yaml b/api/text.yaml index 2c21fa30..6874bfc8 100644 --- a/api/text.yaml +++ b/api/text.yaml @@ -225,6 +225,34 @@ Text.ends_with: assert "hello world".ends_with("world", &remainder) == yes assert remainder == "hello " +Text.find: + short: find a substring + description: > + Find a substring within a text and return its index, if found. + return: + type: 'Int' + description: > + The index where the first occurrence of `target` appears, or `none` if it is not found. + args: + text: + type: 'Text' + description: > + The text to be searched. + target: + type: 'Text' + description: > + The target text to find. + start: + type: 'Int' + default: '1' + description: > + The index at which to begin searching. + example: | + assert "one two".find("one") == 1 + assert "one two".find("two") == 5 + assert "one two".find("three") == none + assert "one two".find("o", start=2) == 7 + Text.from: short: slice from a starting index description: > -- cgit v1.2.3