Files
fabric-carpet/src/main/java/carpet/script/utils/InputValidator.java
T
2023-02-08 21:13:15 +01:00

35 lines
999 B
Java

package carpet.script.utils;
import carpet.script.exception.InternalExpressionException;
import java.util.Locale;
import net.minecraft.ResourceLocationException;
import net.minecraft.resources.ResourceLocation;
public class InputValidator
{
public static String validateSimpleString(String input, boolean strict)
{
String simplified = input.toLowerCase(Locale.ROOT).replaceAll("[^A-Za-z0-9+_]", "");
if (simplified.isEmpty() || (strict && !simplified.equals(input)))
{
throw new InternalExpressionException("simple name can only contain numbers, letter and _");
}
return simplified;
}
public static ResourceLocation identifierOf(String string)
{
try
{
return new ResourceLocation(string);
}
catch (ResourceLocationException iie)
{
throw new InternalExpressionException("Incorrect identifier format '" + string + "': " + iie.getMessage());
}
}
}