Java Code For Token Generation
















Token Generation :-

import java.util.*;
class Token
{
public static void main(String args[])
{
Scanner src=new Scanner(System.in);
System.out.println("Enter line elements ");
String x=src.next();
String s[]=new String[x.length()];
int token[]=new int[x.length()];
int p=0,j=0,i;
for(i=0;i<x.length();i++)
{
if(x.charAt(i)=='='||x.charAt(i)=='+'||x.charAt(i)=='-'||x.charAt(i)=='*'||x.charAt(i)=='/'||x.charAt(i)=='%')
{
s[j++]=x.substring(p,i);
p=i+1;
s[j++]=x.substring(i,p);
}
}

s[j++]=x.substring(p,i);
for(i=0;i<j;i++)
{
if(s[i].contains("="))token[i]=1;
else if(s[i].contains("+"))token[i]=2;
else if(s[i].contains("-"))token[i]=3;
else if(s[i].contains("*"))token[i]=4;
else if(s[i].contains("/"))token[i]=5;
else if(s[i].contains("%"))token[i]=6;
else if(s[i].startsWith("0")||s[i].startsWith("1")||s[i].startsWith("2")||s[i].startsWith("3")||s[i].startsWith("4")||s[i].startsWith("5")||s[i].startsWith("6")||s[i].startsWith("7")||s[i].startsWith("8")||s[i].startsWith("9"))token[i]=7;
else token[i]=8;
}
System.out.println("\nOutput with tokens");
for(i=0;i<j;i++)
System.out.print(token[i]+" ");

System.out.println();
}
}


0 comments :