mirror of
				https://github.com/IntellectualSites/PlotSquared.git
				synced 2025-11-04 03:03:43 +01:00 
			
		
		
		
	Compare commits
	
		
			1 Commits
		
	
	
		
			fix/wrong-
			...
			fix/plotTi
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					ac5cb8d445 | 
@@ -36,7 +36,8 @@ import java.util.regex.Pattern;
 | 
			
		||||
 | 
			
		||||
public class StringMan {
 | 
			
		||||
 | 
			
		||||
    private static final Pattern STRING_SPLIT_PATTERN = Pattern.compile("(?<quoted>\"[\\w ]+\")|(?<single>\\w+)");
 | 
			
		||||
    // Stolen from https://stackoverflow.com/a/366532/12620913 | Debug: https://regex101.com/r/DudJLb/1
 | 
			
		||||
    private static final Pattern STRING_SPLIT_PATTERN = Pattern.compile("[^\\s\"]+|\"([^\"]*)\"");
 | 
			
		||||
 | 
			
		||||
    public static String replaceFromMap(String string, Map<String, String> replacements) {
 | 
			
		||||
        StringBuilder sb = new StringBuilder(string);
 | 
			
		||||
@@ -355,7 +356,7 @@ public class StringMan {
 | 
			
		||||
        var matcher = StringMan.STRING_SPLIT_PATTERN.matcher(message);
 | 
			
		||||
        List<String> splitMessages = new ArrayList<>();
 | 
			
		||||
        while (matcher.find()) {
 | 
			
		||||
            splitMessages.add(matcher.group(0).replaceAll("\"", ""));
 | 
			
		||||
            splitMessages.add(matcher.group(matcher.groupCount() - 1).replaceAll("\"", ""));
 | 
			
		||||
        }
 | 
			
		||||
        return splitMessages;
 | 
			
		||||
    }
 | 
			
		||||
 
 | 
			
		||||
@@ -101,7 +101,7 @@ public class FlagTest {
 | 
			
		||||
    public void shouldSuccessfullyParseTitleFlagWithTitleEmptyAndSubTitleSingleWord() {
 | 
			
		||||
        Assertions.assertDoesNotThrow(() -> {
 | 
			
		||||
            var title = PlotTitleFlag.TITLE_FLAG_DEFAULT.parse("\"\" \"single\"").getValue();
 | 
			
		||||
            Assertions.assertEquals(" ", title.title());
 | 
			
		||||
            Assertions.assertEquals("", title.title());
 | 
			
		||||
            Assertions.assertEquals("single", title.subtitle());
 | 
			
		||||
        }, "Should not throw a FlagParseException");
 | 
			
		||||
    }
 | 
			
		||||
 
 | 
			
		||||
@@ -32,7 +32,9 @@ public class StringManTest {
 | 
			
		||||
                new Message("title", List.of("title")),
 | 
			
		||||
                new Message("title \"sub title\"", List.of("title", "sub title")),
 | 
			
		||||
                new Message("\"a title\" subtitle", List.of("a title", "subtitle")),
 | 
			
		||||
                new Message("\"title\" \"subtitle\"", List.of("title", "subtitle"))
 | 
			
		||||
                new Message("\"title\" \"subtitle\"", List.of("title", "subtitle")),
 | 
			
		||||
                new Message("\"How <bold>bold</bold> of you\" \"to assume I like <rainbow>rainbows</rainbow>\"",
 | 
			
		||||
                        List.of("How <bold>bold</bold> of you", "to assume I like <rainbow>rainbows</rainbow>"))
 | 
			
		||||
        );
 | 
			
		||||
 | 
			
		||||
        for (Message message : messages) {
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user