nlptoolkit-morphologicalanalysis 1.0.9 → 1.0.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -325,6 +325,13 @@ export declare class FsmMorphologicalAnalyzer {
325
325
  * @return false if surfaceForm is null or length of 0, return true if it is a letter.
326
326
  */
327
327
  isProperNoun(surfaceForm: string): boolean;
328
+ /**
329
+ * The isCode method takes surfaceForm String as input and checks if it consists of both letters and numbers
330
+ *
331
+ * @param surfaceForm String to check for code-like word.
332
+ * @return true if it is a code-like word, return false otherwise.
333
+ */
334
+ isCode(surfaceForm: string): boolean;
328
335
  /**
329
336
  * The robustMorphologicalAnalysis is used to analyse surfaceForm String. First it gets the currentParse of the surfaceForm
330
337
  * then, if the size of the currentParse is 0, and given surfaceForm is a proper noun, it adds the surfaceForm
@@ -4,7 +4,7 @@
4
4
  if (v !== undefined) module.exports = v;
5
5
  }
6
6
  else if (typeof define === "function" && define.amd) {
7
- define(["require", "exports", "./FiniteStateMachine", "nlptoolkit-dictionary/dist/Dictionary/TxtDictionary", "nlptoolkit-datastructure/dist/LRUCache", "./FsmParseList", "nlptoolkit-dictionary/dist/Dictionary/WordComparator", "fs", "./Transition", "./MorphologicalTag", "nlptoolkit-dictionary/dist/Dictionary/TxtWord", "./FsmParse", "nlptoolkit-corpus/dist/Sentence", "nlptoolkit-dictionary/dist/Dictionary/Word", "./State"], factory);
7
+ define(["require", "exports", "./FiniteStateMachine", "nlptoolkit-dictionary/dist/Dictionary/TxtDictionary", "nlptoolkit-datastructure/dist/LRUCache", "./FsmParseList", "nlptoolkit-dictionary/dist/Dictionary/WordComparator", "fs", "./Transition", "./MorphologicalTag", "nlptoolkit-dictionary/dist/Dictionary/TxtWord", "./FsmParse", "nlptoolkit-corpus/dist/Sentence", "nlptoolkit-dictionary/dist/Dictionary/Word", "./State", "nlptoolkit-datastructure/dist/Queue"], factory);
8
8
  }
9
9
  })(function (require, exports) {
10
10
  "use strict";
@@ -23,6 +23,7 @@
23
23
  const Sentence_1 = require("nlptoolkit-corpus/dist/Sentence");
24
24
  const Word_1 = require("nlptoolkit-dictionary/dist/Dictionary/Word");
25
25
  const State_1 = require("./State");
26
+ const Queue_1 = require("nlptoolkit-datastructure/dist/Queue");
26
27
  class FsmMorphologicalAnalyzer {
27
28
  /**
28
29
  * Another constructor of FsmMorphologicalAnalyzer class. It generates a new TxtDictionary type dictionary from
@@ -595,7 +596,7 @@
595
596
  let newFsmParse = currentFsmParse.clone();
596
597
  newFsmParse.addSuffix(currentTransition.toState(), tmp, currentTransition.getWith(), currentTransition.toString(), currentTransition.toPos());
597
598
  newFsmParse.setAgreement(currentTransition.getWith());
598
- fsmParse.push(newFsmParse);
599
+ fsmParse.enqueue(newFsmParse);
599
600
  }
600
601
  }
601
602
  }
@@ -620,7 +621,7 @@
620
621
  let newFsmParse = currentFsmParse.clone();
621
622
  newFsmParse.addSuffix(currentTransition.toState(), tmp, currentTransition.getWith(), currentTransition.toString(), currentTransition.toPos());
622
623
  newFsmParse.setAgreement(currentTransition.getWith());
623
- fsmParse.push(newFsmParse);
624
+ fsmParse.enqueue(newFsmParse);
624
625
  }
625
626
  }
626
627
  }
@@ -633,16 +634,18 @@
633
634
  * @return true when the currentState is end state and input surfaceForm id equal to currentSurfaceForm, otherwise false.
634
635
  */
635
636
  parseExists(fsmParse, surfaceForm) {
636
- while (fsmParse.length > 0) {
637
- let currentFsmParse = fsmParse[0];
638
- fsmParse.splice(0, 1);
637
+ let parseQueue = new Queue_1.Queue(1000);
638
+ parseQueue.enqueueAll(fsmParse);
639
+ while (!parseQueue.isEmpty()) {
640
+ let currentFsmParse = parseQueue.peek();
641
+ parseQueue.dequeue();
639
642
  let root = currentFsmParse.getWord();
640
643
  let currentState = currentFsmParse.getFinalSuffix();
641
644
  let currentSurfaceForm = currentFsmParse.getSurfaceForm();
642
645
  if (currentState.isEndState() && currentSurfaceForm == surfaceForm) {
643
646
  return true;
644
647
  }
645
- this.addNewParsesFromCurrentParseSurfaceForm(currentFsmParse, fsmParse, surfaceForm, root);
648
+ this.addNewParsesFromCurrentParseSurfaceForm(currentFsmParse, parseQueue, surfaceForm, root);
646
649
  }
647
650
  return false;
648
651
  }
@@ -657,9 +660,11 @@
657
660
  parseWordLength(fsmParse, maxLength) {
658
661
  let result = new Array();
659
662
  let resultSuffixList = new Array();
660
- while (fsmParse.length > 0) {
661
- let currentFsmParse = fsmParse[0];
662
- fsmParse.splice(0, 1);
663
+ let parseQueue = new Queue_1.Queue(1000);
664
+ parseQueue.enqueueAll(fsmParse);
665
+ while (!parseQueue.isEmpty()) {
666
+ let currentFsmParse = parseQueue.peek();
667
+ parseQueue.dequeue();
663
668
  let root = currentFsmParse.getWord();
664
669
  let currentState = currentFsmParse.getFinalSuffix();
665
670
  let currentSurfaceForm = currentFsmParse.getSurfaceForm();
@@ -671,7 +676,7 @@
671
676
  resultSuffixList.push(currentSuffixList);
672
677
  }
673
678
  }
674
- this.addNewParsesFromCurrentParseLength(currentFsmParse, fsmParse, maxLength, root);
679
+ this.addNewParsesFromCurrentParseLength(currentFsmParse, parseQueue, maxLength, root);
675
680
  }
676
681
  return result;
677
682
  }
@@ -686,9 +691,11 @@
686
691
  parseWordSurfaceForm(fsmParse, surfaceForm) {
687
692
  let result = new Array();
688
693
  let resultSuffixList = new Array();
689
- while (fsmParse.length > 0) {
690
- let currentFsmParse = fsmParse[0];
691
- fsmParse.splice(0, 1);
694
+ let parseQueue = new Queue_1.Queue(1000);
695
+ parseQueue.enqueueAll(fsmParse);
696
+ while (!parseQueue.isEmpty()) {
697
+ let currentFsmParse = parseQueue.peek();
698
+ parseQueue.dequeue();
692
699
  let root = currentFsmParse.getWord();
693
700
  let currentState = currentFsmParse.getFinalSuffix();
694
701
  let currentSurfaceForm = currentFsmParse.getSurfaceForm();
@@ -700,7 +707,7 @@
700
707
  resultSuffixList.push(currentSuffixList);
701
708
  }
702
709
  }
703
- this.addNewParsesFromCurrentParseSurfaceForm(currentFsmParse, fsmParse, surfaceForm, root);
710
+ this.addNewParsesFromCurrentParseSurfaceForm(currentFsmParse, parseQueue, surfaceForm, root);
704
711
  }
705
712
  return result;
706
713
  }
@@ -984,6 +991,18 @@
984
991
  (surfaceForm.charAt(0) == '\u00dc') || (surfaceForm.charAt(0) == '\u011e') || (surfaceForm.charAt(0) == '\u015e') ||
985
992
  (surfaceForm.charAt(0) == '\u00c7') || (surfaceForm.charAt(0) == '\u00d6'); // İ, Ü, Ğ, Ş, Ç, Ö
986
993
  }
994
+ /**
995
+ * The isCode method takes surfaceForm String as input and checks if it consists of both letters and numbers
996
+ *
997
+ * @param surfaceForm String to check for code-like word.
998
+ * @return true if it is a code-like word, return false otherwise.
999
+ */
1000
+ isCode(surfaceForm) {
1001
+ if (surfaceForm == undefined || surfaceForm.length == 0) {
1002
+ return false;
1003
+ }
1004
+ return this.patternMatches("^.*[0-9].*$", surfaceForm) && this.patternMatches("^.*[a-zA-ZçöğüşıÇÖĞÜŞİ].*$", surfaceForm);
1005
+ }
987
1006
  /**
988
1007
  * The robustMorphologicalAnalysis is used to analyse surfaceForm String. First it gets the currentParse of the surfaceForm
989
1008
  * then, if the size of the currentParse is 0, and given surfaceForm is a proper noun, it adds the surfaceForm
@@ -1002,12 +1021,16 @@
1002
1021
  let fsmParse = new Array();
1003
1022
  if (this.isProperNoun(surfaceForm)) {
1004
1023
  fsmParse.push(new FsmParse_1.FsmParse(surfaceForm, this.finiteStateMachine.getState("ProperRoot")));
1005
- return new FsmParseList_1.FsmParseList(this.parseWordSurfaceForm(fsmParse, surfaceForm));
1006
1024
  }
1007
1025
  else {
1008
- fsmParse.push(new FsmParse_1.FsmParse(surfaceForm, this.finiteStateMachine.getState("NominalRoot")));
1009
- return new FsmParseList_1.FsmParseList(this.parseWordSurfaceForm(fsmParse, surfaceForm));
1026
+ if (this.isCode(surfaceForm)) {
1027
+ fsmParse.push(new FsmParse_1.FsmParse(surfaceForm, this.finiteStateMachine.getState("CodeRoot")));
1028
+ }
1029
+ else {
1030
+ fsmParse.push(new FsmParse_1.FsmParse(surfaceForm, this.finiteStateMachine.getState("NominalRoot")));
1031
+ }
1010
1032
  }
1033
+ return new FsmParseList_1.FsmParseList(this.parseWordSurfaceForm(fsmParse, surfaceForm));
1011
1034
  }
1012
1035
  else {
1013
1036
  return currentParse;
@@ -1060,11 +1083,11 @@
1060
1083
  * @return true if surfaceForm matches with the regex.
1061
1084
  */
1062
1085
  isInteger(surfaceForm) {
1063
- if (!this.patternMatches("^\\+?\\d+$", surfaceForm))
1086
+ if (!this.patternMatches("^[+-]?\\d+$", surfaceForm))
1064
1087
  return false;
1065
1088
  let len = surfaceForm.length;
1066
1089
  if (len < 10) {
1067
- return true; //Most common scenario. Return after a single check.
1090
+ return true;
1068
1091
  }
1069
1092
  else {
1070
1093
  if (len > 10) {
@@ -1082,7 +1105,7 @@
1082
1105
  * @return true if surfaceForm matches with the regex.
1083
1106
  */
1084
1107
  isDouble(surfaceForm) {
1085
- return this.patternMatches("^\\+?(\\d+)?\\.\\d*$", surfaceForm);
1108
+ return this.patternMatches("^[+-]?(\\d+)?\\.\\d*$", surfaceForm);
1086
1109
  }
1087
1110
  /**
1088
1111
  * The isNumber method compares input surfaceForm with the array of written numbers and returns the result.
@@ -1 +1 @@
1
- {"version":3,"file":"FsmMorphologicalAnalyzer.js","sourceRoot":"","sources":["../../source/MorphologicalAnalysis/FsmMorphologicalAnalyzer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FsmMorphologicalAnalyzer.js","sourceRoot":"","sources":["../../source/MorphologicalAnalysis/FsmMorphologicalAnalyzer.ts"],"names":[],"mappings":"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"}
@@ -292,7 +292,7 @@
292
292
  "in i ADJ NOUN", "inde i ADJ NOUN", "ine i ADJ NOUN", "ini i ADJ NOUN", "inin i ADJ NOUN",
293
293
  "ılan ı NOUN VERB", "ılana ı NOUN VERB", "ılın ı NOUN VERB", "ılınca ı NOUN VERB", "la la VERB NOUN",
294
294
  "lar la VERB NOUN", "lardan la VERB NOUN", "lardandır la VERB NOUN", "lardır la VERB NOUN", "ları la VERB NOUN",
295
- "larıdır la VERB NOUN", "larım la VERB NOUN", "larımdan la VERB NOUN", "larımız la VERB NOUN",
295
+ "larıdır la VERB NOUN", "larım la VERB NOUN", "larımda la VERB NOUN", "larımdan la VERB NOUN", "larımız la VERB NOUN",
296
296
  "larımıza la VERB NOUN",
297
297
  "larımızda la VERB NOUN", "larımızdan la VERB NOUN", "larımızdaydı la VERB NOUN", "larımızı la VERB NOUN",
298
298
  "larımızın la VERB NOUN",
@@ -1 +1 @@
1
- {"version":3,"file":"FsmParseList.js","sourceRoot":"","sources":["../../source/MorphologicalAnalysis/FsmParseList.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FsmParseList.js","sourceRoot":"","sources":["../../source/MorphologicalAnalysis/FsmParseList.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "nlptoolkit-morphologicalanalysis",
3
- "version": "1.0.9",
3
+ "version": "1.0.11",
4
4
  "description": "Turkish Morphological Analysis Library",
5
5
  "main": "index.js",
6
6
  "types": "index.js",
@@ -25,7 +25,7 @@
25
25
  },
26
26
  "dependencies": {
27
27
  "nlptoolkit-corpus": "^1.0.9",
28
- "nlptoolkit-datastructure": "^1.0.4",
28
+ "nlptoolkit-datastructure": "^1.0.7",
29
29
  "nlptoolkit-dictionary": "^1.0.9",
30
30
  "nlptoolkit-ngram": "^1.0.2",
31
31
  "nlptoolkit-xmlparser": "^1.0.4"
@@ -14,6 +14,7 @@ import {FsmParse} from "./FsmParse";
14
14
  import {Sentence} from "nlptoolkit-corpus/dist/Sentence";
15
15
  import {Word} from "nlptoolkit-dictionary/dist/Dictionary/Word";
16
16
  import {State} from "./State";
17
+ import {Queue} from "nlptoolkit-datastructure/dist/Queue";
17
18
 
18
19
  export class FsmMorphologicalAnalyzer {
19
20
 
@@ -581,7 +582,7 @@ export class FsmMorphologicalAnalyzer {
581
582
  * @param maxLength Maximum length of the parse.
582
583
  * @param root TxtWord used to make transition.
583
584
  */
584
- private addNewParsesFromCurrentParseLength(currentFsmParse: FsmParse, fsmParse: Array<FsmParse>,
585
+ private addNewParsesFromCurrentParseLength(currentFsmParse: FsmParse, fsmParse: Queue<FsmParse>,
585
586
  maxLength: number, root: TxtWord){
586
587
  let currentState = currentFsmParse.getFinalSuffix();
587
588
  let currentSurfaceForm = currentFsmParse.getSurfaceForm();
@@ -590,11 +591,11 @@ export class FsmMorphologicalAnalyzer {
590
591
  (currentSurfaceForm == root.getName() && currentTransition.transitionPossibleFromRoot(root, currentState)))) {
591
592
  let tmp = currentTransition.makeTransition(root, currentSurfaceForm, currentFsmParse.getStartState());
592
593
  if (tmp.length <= maxLength) {
593
- let newFsmParse = currentFsmParse.clone();
594
+ let newFsmParse = currentFsmParse.clone()
594
595
  newFsmParse.addSuffix(currentTransition.toState(), tmp, currentTransition.getWith(),
595
- currentTransition.toString(), currentTransition.toPos());
596
- newFsmParse.setAgreement(currentTransition.getWith());
597
- fsmParse.push(newFsmParse);
596
+ currentTransition.toString(), currentTransition.toPos())
597
+ newFsmParse.setAgreement(currentTransition.getWith())
598
+ fsmParse.enqueue(newFsmParse)
598
599
  }
599
600
  }
600
601
  }
@@ -610,7 +611,7 @@ export class FsmMorphologicalAnalyzer {
610
611
  * @param surfaceForm String to use during transition.
611
612
  * @param root TxtWord used to make transition.
612
613
  */
613
- private addNewParsesFromCurrentParseSurfaceForm(currentFsmParse: FsmParse, fsmParse: Array<FsmParse>,
614
+ private addNewParsesFromCurrentParseSurfaceForm(currentFsmParse: FsmParse, fsmParse: Queue<FsmParse>,
614
615
  surfaceForm: string, root: TxtWord){
615
616
  let currentState = currentFsmParse.getFinalSuffix();
616
617
  let currentSurfaceForm = currentFsmParse.getSurfaceForm();
@@ -618,10 +619,10 @@ export class FsmMorphologicalAnalyzer {
618
619
  if (currentTransition.transitionPossible(currentFsmParse.getSurfaceForm(), surfaceForm) && currentTransition.transitionPossibleFromParse(currentFsmParse) && (currentSurfaceForm != root.getName() || (currentSurfaceForm == root.getName() && currentTransition.transitionPossibleFromRoot(root, currentState)))) {
619
620
  let tmp = currentTransition.makeTransition(root, currentSurfaceForm, currentFsmParse.getStartState());
620
621
  if ((tmp.length < surfaceForm.length && this.isPossibleSubstring(tmp, surfaceForm, root)) || (tmp.length == surfaceForm.length && (root.lastIdropsDuringSuffixation() || (tmp == surfaceForm)))) {
621
- let newFsmParse = currentFsmParse.clone();
622
- newFsmParse.addSuffix(currentTransition.toState(), tmp, currentTransition.getWith(), currentTransition.toString(), currentTransition.toPos());
623
- newFsmParse.setAgreement(currentTransition.getWith());
624
- fsmParse.push(newFsmParse);
622
+ let newFsmParse = currentFsmParse.clone()
623
+ newFsmParse.addSuffix(currentTransition.toState(), tmp, currentTransition.getWith(), currentTransition.toString(), currentTransition.toPos())
624
+ newFsmParse.setAgreement(currentTransition.getWith())
625
+ fsmParse.enqueue(newFsmParse)
625
626
  }
626
627
  }
627
628
  }
@@ -635,18 +636,20 @@ export class FsmMorphologicalAnalyzer {
635
636
  * @return true when the currentState is end state and input surfaceForm id equal to currentSurfaceForm, otherwise false.
636
637
  */
637
638
  private parseExists(fsmParse: Array<FsmParse>, surfaceForm: string){
638
- while (fsmParse.length > 0) {
639
- let currentFsmParse = fsmParse[0]
640
- fsmParse.splice(0, 1);
641
- let root = <TxtWord> currentFsmParse.getWord();
642
- let currentState = currentFsmParse.getFinalSuffix();
643
- let currentSurfaceForm = currentFsmParse.getSurfaceForm();
639
+ let parseQueue = new Queue<FsmParse>(1000)
640
+ parseQueue.enqueueAll(fsmParse)
641
+ while (!parseQueue.isEmpty()) {
642
+ let currentFsmParse = parseQueue.peek()
643
+ parseQueue.dequeue()
644
+ let root = <TxtWord> currentFsmParse.getWord()
645
+ let currentState = currentFsmParse.getFinalSuffix()
646
+ let currentSurfaceForm = currentFsmParse.getSurfaceForm()
644
647
  if (currentState.isEndState() && currentSurfaceForm == surfaceForm) {
645
- return true;
648
+ return true
646
649
  }
647
- this.addNewParsesFromCurrentParseSurfaceForm(currentFsmParse, fsmParse, surfaceForm, root);
650
+ this.addNewParsesFromCurrentParseSurfaceForm(currentFsmParse, parseQueue, surfaceForm, root)
648
651
  }
649
- return false;
652
+ return false
650
653
  }
651
654
 
652
655
  /**
@@ -660,9 +663,11 @@ export class FsmMorphologicalAnalyzer {
660
663
  private parseWordLength(fsmParse: Array<FsmParse>, maxLength: number): Array<FsmParse>{
661
664
  let result = new Array<FsmParse>();
662
665
  let resultSuffixList = new Array<string>();
663
- while (fsmParse.length > 0) {
664
- let currentFsmParse = fsmParse[0]
665
- fsmParse.splice(0, 1);
666
+ let parseQueue = new Queue<FsmParse>(1000)
667
+ parseQueue.enqueueAll(fsmParse)
668
+ while (!parseQueue.isEmpty()) {
669
+ let currentFsmParse = parseQueue.peek()
670
+ parseQueue.dequeue()
666
671
  let root = <TxtWord> currentFsmParse.getWord();
667
672
  let currentState = currentFsmParse.getFinalSuffix();
668
673
  let currentSurfaceForm = currentFsmParse.getSurfaceForm();
@@ -674,7 +679,7 @@ export class FsmMorphologicalAnalyzer {
674
679
  resultSuffixList.push(currentSuffixList);
675
680
  }
676
681
  }
677
- this.addNewParsesFromCurrentParseLength(currentFsmParse, fsmParse, maxLength, root);
682
+ this.addNewParsesFromCurrentParseLength(currentFsmParse, parseQueue, maxLength, root);
678
683
  }
679
684
  return result;
680
685
  }
@@ -690,9 +695,11 @@ export class FsmMorphologicalAnalyzer {
690
695
  private parseWordSurfaceForm(fsmParse: Array<FsmParse>, surfaceForm: string): Array<FsmParse>{
691
696
  let result = new Array<FsmParse>();
692
697
  let resultSuffixList = new Array<string>();
693
- while (fsmParse.length > 0) {
694
- let currentFsmParse = fsmParse[0]
695
- fsmParse.splice(0, 1);
698
+ let parseQueue = new Queue<FsmParse>(1000)
699
+ parseQueue.enqueueAll(fsmParse)
700
+ while (!parseQueue.isEmpty()) {
701
+ let currentFsmParse = parseQueue.peek()
702
+ parseQueue.dequeue()
696
703
  let root = <TxtWord> currentFsmParse.getWord();
697
704
  let currentState = currentFsmParse.getFinalSuffix();
698
705
  let currentSurfaceForm = currentFsmParse.getSurfaceForm();
@@ -704,7 +711,7 @@ export class FsmMorphologicalAnalyzer {
704
711
  resultSuffixList.push(currentSuffixList);
705
712
  }
706
713
  }
707
- this.addNewParsesFromCurrentParseSurfaceForm(currentFsmParse, fsmParse, surfaceForm, root);
714
+ this.addNewParsesFromCurrentParseSurfaceForm(currentFsmParse, parseQueue, surfaceForm, root);
708
715
  }
709
716
  return result;
710
717
  }
@@ -991,6 +998,19 @@ export class FsmMorphologicalAnalyzer {
991
998
  (surfaceForm.charAt(0) == '\u00c7') || (surfaceForm.charAt(0) == '\u00d6'); // İ, Ü, Ğ, Ş, Ç, Ö
992
999
  }
993
1000
 
1001
+ /**
1002
+ * The isCode method takes surfaceForm String as input and checks if it consists of both letters and numbers
1003
+ *
1004
+ * @param surfaceForm String to check for code-like word.
1005
+ * @return true if it is a code-like word, return false otherwise.
1006
+ */
1007
+ isCode(surfaceForm: string){
1008
+ if (surfaceForm == undefined || surfaceForm.length == 0) {
1009
+ return false;
1010
+ }
1011
+ return this.patternMatches("^.*[0-9].*$", surfaceForm) && this.patternMatches("^.*[a-zA-ZçöğüşıÇÖĞÜŞİ].*$", surfaceForm);
1012
+ }
1013
+
994
1014
  /**
995
1015
  * The robustMorphologicalAnalysis is used to analyse surfaceForm String. First it gets the currentParse of the surfaceForm
996
1016
  * then, if the size of the currentParse is 0, and given surfaceForm is a proper noun, it adds the surfaceForm
@@ -1009,11 +1029,14 @@ export class FsmMorphologicalAnalyzer {
1009
1029
  let fsmParse = new Array<FsmParse>();
1010
1030
  if (this.isProperNoun(surfaceForm)) {
1011
1031
  fsmParse.push(new FsmParse(surfaceForm, this.finiteStateMachine.getState("ProperRoot")));
1012
- return new FsmParseList(this.parseWordSurfaceForm(fsmParse, surfaceForm));
1013
1032
  } else {
1014
- fsmParse.push(new FsmParse(surfaceForm, this.finiteStateMachine.getState("NominalRoot")));
1015
- return new FsmParseList(this.parseWordSurfaceForm(fsmParse, surfaceForm));
1033
+ if (this.isCode(surfaceForm)) {
1034
+ fsmParse.push(new FsmParse(surfaceForm, this.finiteStateMachine.getState("CodeRoot")));
1035
+ } else {
1036
+ fsmParse.push(new FsmParse(surfaceForm, this.finiteStateMachine.getState("NominalRoot")));
1037
+ }
1016
1038
  }
1039
+ return new FsmParseList(this.parseWordSurfaceForm(fsmParse, surfaceForm));
1017
1040
  } else {
1018
1041
  return currentParse;
1019
1042
  }
@@ -1068,11 +1091,11 @@ export class FsmMorphologicalAnalyzer {
1068
1091
  * @return true if surfaceForm matches with the regex.
1069
1092
  */
1070
1093
  private isInteger(surfaceForm: string): boolean{
1071
- if (!this.patternMatches("^\\+?\\d+$", surfaceForm))
1094
+ if (!this.patternMatches("^[+-]?\\d+$", surfaceForm))
1072
1095
  return false;
1073
1096
  let len = surfaceForm.length;
1074
1097
  if (len < 10) {
1075
- return true; //Most common scenario. Return after a single check.
1098
+ return true;
1076
1099
  } else {
1077
1100
  if (len > 10) {
1078
1101
  return false;
@@ -1089,7 +1112,7 @@ export class FsmMorphologicalAnalyzer {
1089
1112
  * @return true if surfaceForm matches with the regex.
1090
1113
  */
1091
1114
  private isDouble(surfaceForm: string): boolean{
1092
- return this.patternMatches("^\\+?(\\d+)?\\.\\d*$", surfaceForm);
1115
+ return this.patternMatches("^[+-]?(\\d+)?\\.\\d*$", surfaceForm);
1093
1116
  }
1094
1117
 
1095
1118
  /**
@@ -28,7 +28,7 @@ export class FsmParseList {
28
28
  "in i ADJ NOUN", "inde i ADJ NOUN", "ine i ADJ NOUN", "ini i ADJ NOUN", "inin i ADJ NOUN",
29
29
  "ılan ı NOUN VERB", "ılana ı NOUN VERB", "ılın ı NOUN VERB", "ılınca ı NOUN VERB", "la la VERB NOUN",
30
30
  "lar la VERB NOUN", "lardan la VERB NOUN", "lardandır la VERB NOUN", "lardır la VERB NOUN", "ları la VERB NOUN",
31
- "larıdır la VERB NOUN", "larım la VERB NOUN", "larımdan la VERB NOUN", "larımız la VERB NOUN",
31
+ "larıdır la VERB NOUN", "larım la VERB NOUN", "larımda la VERB NOUN", "larımdan la VERB NOUN", "larımız la VERB NOUN",
32
32
  "larımıza la VERB NOUN",
33
33
  "larımızda la VERB NOUN", "larımızdan la VERB NOUN", "larımızdaydı la VERB NOUN", "larımızı la VERB NOUN",
34
34
  "larımızın la VERB NOUN",