summaryrefslogtreecommitdiff
path: root/src/main/java/ReplPair.java
diff options
context:
space:
mode:
authorBenjamin J. Culkin <bjculkin@mix.wvu.edu>2019-01-05 11:10:28 -0400
committerBenjamin J. Culkin <bjculkin@mix.wvu.edu>2019-01-05 11:10:39 -0400
commit98c5fd3f7c3cfc8dea8908d04b8d694a53fa1aeb (patch)
tree1d9d5b43f8ff8f0a758b8f4be038d9b429095c91 /src/main/java/ReplPair.java
parent82492af68aa974c6fcaf0c579dc9f166224b6329 (diff)
Split AffixLister pt. 1
Diffstat (limited to 'src/main/java/ReplPair.java')
-rw-r--r--src/main/java/ReplPair.java75
1 files changed, 75 insertions, 0 deletions
diff --git a/src/main/java/ReplPair.java b/src/main/java/ReplPair.java
new file mode 100644
index 00000000..474f7c93
--- /dev/null
+++ b/src/main/java/ReplPair.java
@@ -0,0 +1,75 @@
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Scanner;
+
+/**
+ * String pairs for replacements.
+ *
+ * @author Ben Culkin
+ */
+public class ReplPair {
+ /**
+ * The string to look for.
+ */
+ public String find;
+ /**
+ * The string to replace it with.
+ */
+ public String replace;
+
+ /**
+ * Create a new blank replacement pair.
+ */
+ public ReplPair() {
+
+ }
+
+ /**
+ * Create a new replacement pair.
+ *
+ * @param f
+ * The string to find.
+ * @param r
+ * The string to replace.
+ */
+ public ReplPair(String f, String r) {
+ find = f;
+ replace = r;
+ }
+
+ /**
+ * Read a list of replacement pairs from an input source.
+ *
+ * @param scn
+ * The source to read the replacements from.
+ */
+ public static List<ReplPair> readList(Scanner scn) {
+ return ReplPair.readList(new ArrayList<>(), scn);
+ }
+
+ /**
+ * Read a list of replacement pairs from an input source, adding them to
+ * an existing list.
+ *
+ * @param detals
+ * The list to add the replacements to.
+ * @param scn
+ * The source to read the replacements from.
+ */
+ public static List<ReplPair> readList(List<ReplPair> detals, Scanner scn) {
+ while (scn.hasNextLine()) {
+ String name = scn.nextLine().trim();
+ if (name.equals("")) continue;
+ if (name.startsWith("#")) continue;
+
+ String body;
+ do {
+ body = scn.nextLine().trim();
+ } while (body.startsWith("#"));
+
+ detals.add(new ReplPair(name, body));
+ }
+
+ return detals;
+ }
+}