رشته در Factor دنبالهای از نویسههاست و در کنار واژگان اختصاصی خود، پروتکل کامل sequences را نیز به اشتراک میگذارد: length، nth، head، tail، map، filter و غیره.
"hello" length . ! => 5
"hello" reverse . ! => "olleh"
"abcdef" 3 head . ! => "abc"
واژههای مخصوص رشته بیشتر در splitting، ascii و unicode قرار دارند:
| واژه | واژگان | کاری که میکند |
|---|---|---|
split1 |
splitting |
در اولین وقوع جدا میکند |
split |
splitting |
روی هر نویسهی یک مجموعه جدا میکند |
harvest |
sequences |
قطعههای خالی را از نتیجهی جداسازی حذف میکند |
replace |
splitting |
یک زیررشته را جانشین میکند |
surround |
sequences |
آن را با یک پیشوند و پسوند میپوشاند |
glue |
sequences |
دو رشته را با یک جداکننده به هم میچسباند |
join |
sequences |
آرایهای از رشتهها را با یک جداکننده به هم میچسباند |
>lower |
ascii |
به حروف کوچک تبدیل میکند (ASCII) |
>upper |
ascii |
به حروف بزرگ تبدیل میکند (ASCII) |
[ blank? ] trim |
sequences |
فاصلههای ابتدا و انتها را حذف میکند |
first, second, third, fourth
|
sequences |
عنصر ابتدایی |
first2, first3
|
sequences |
دو یا سه عنصر ابتدایی را از هم باز میکند |
>string |
strings |
دنبالهای از نویسهها را به رشته تبدیل میکند |
1string |
strings |
یک نویسه را به رشتهی تکنویسهای تبدیل میکند |
CHAR: x |
parser | یک نویسهی ثابت (مثلاً CHAR: A → 65) |
برای تبدیل رفتوبرگشتی میان عدد و رشته، math.parser دو واژهی number>string و string>number را در اختیار میگذارد. برای خروجی رشتهی قالبی نیز formatting واژهی sprintf و مشابههای آن را فراهم میکند.
برای تبدیل بزرگی و کوچکی حروف یا دستهبندی نویسهها با در نظر گرفتن یونیکد، از واژههای متناظر در unicode استفاده کنید.