> For the complete documentation index, see [llms.txt](https://wiki.redmodding.org/scripting-cyberpunk/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://wiki.redmodding.org/scripting-cyberpunk/redscript/language-reference/strings.md).

# Strings

How to get shit done with strings

* For how to enable logging, please see [Logging](/scripting-cyberpunk/redscript/common-patterns/logging.md)
* If you want to use strings for localization, check [Utilities](/scripting-cyberpunk/redscript/language-reference/utility-functions/utilities.md) -> [Utilities](/scripting-cyberpunk/redscript/language-reference/utility-functions/utilities.md#localization)

## String interpolation

REDscript lets you insert any expression into a string using the `s` prefix. This is a convenient way to create formatted strings without using concatenation or conversions.

```swift
Log(s"My name is \(name) and I am \(year - birthYear) years old");
```

This is equivalent to:

```swift
Log("My name is " + name + " and I am " + ToString(year - birthYear) + " years old");
```

The compiler automatically converts expressions of any type other than `String` using `ToString`.

## String concatenation

Via string addition overloads, you can simply use the `+` operator  to join strings with values of different types (such as `Int32` or `Float`) without using [string conversations](/scripting-cyberpunk/redscript/language-reference/utility-functions/string-functions.md#string-conversions).

```swift
// You can use addition to combine strings with integers, floats and several other types 
Log("My name is " + name + " and I am " + (year - birthYear) + " years old");
```

## Utility Functions

Check [String Functions](/scripting-cyberpunk/redscript/language-reference/utility-functions/string-functions.md) for helper functions with strings.
