### Godot version

4.1.1

### System information

linux

### Issue description

The `"%+f"` format adds a `+` sign in front of positive numbers. If you try to format `-0.0`, it breaks and displays both a `+` and a `-`.

### Steps to reproduce

```gdscript
@tool
extends EditorScript

func _run() -> void:
    print("%+f" % -0.0)
```

### Minimal reproduction project

see above
from = i;
		}
		if (empty && inside) {
			ret.push_back(substr(from, i - from));
			inside = false;
		}
		if (i == len) {
			break;
		}
		i++;
	}
	return ret;
}
Vector<> ::split(const  &p_splitter, bool p_allow_empty, int p_maxsplit) const {
	Vector<> ret;
	if (is_empty()) {
		if (p_allow_empty) {
			ret.push_back("");
		}
		return ret;
	}
	int from = 0;
	int len = length();
	while (true) {
		int end;
		if (p_splitter.is_empty()) {
			end = from + 1;
		} else {
			end = find(p_splitter, from);
			if (end < 0) {