⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 copy.java

📁 自己写的一个用java实现的一个语法分析器
💻 JAVA
字号:
package Syntax;

public class copy {
	/*private static int i=0;//定位字符串中的字符
	private static int r=0;//定位右部字符串的字符
	private String sentence;
	private int maxLength=13;//字符串的最大长度
	private int rightLength=10;//右部的字符串最大长度
	private Character[] ch=new Character[10];
	private int No;
	private String begin="";
	private Character left="";
	private Character[] right;
	public void setNo(int n)
	{
		No=n;
	}
	public void setLeft(String l)
	{
		left=l;
	}
	public void setRight(char c)
	{
		if(right.length>10)
		{
			rightLength+=10;
			//maxLength=rightLength;
		}
		right=new char[rightLength];
		right[r]=c;
	}
	public int getNo()
	{
		return this.No;
	}
	public String getLeft()
	{
		return this.left;
	}
	public char[] getRight()
	{
		return this.right;
	}
	private char getChar()
    {
		if(++i<sentence.length())return sentence.charAt(i);
    	else return '\n';
    }
	boolean isUc_Letter(char c)//判断是否为大写字母
    {
        if(c >= 'A' && c <= 'Z')return true;
        else return false;
    }
	public boolean filter(String str)//检查产生式的正确性并将空格符过滤
	{
		i=0;
	    r=0;
	    this.sentence=str;
		char c=getChar();
		String error_msg="";
		while(c==' ')c=getChar();
		if(isUc_Letter(c))this.left+=c;//判断左部
		else error_msg="左部必须为非终结符(大写字母)!";
		c=getChar();
		if(c=='\'')
		{
			this.left+=c;
			begin=this.left;
			c=getChar();
		}
		while(c==' ')c=getChar();
		if(c=='-')c=getChar();
		else error_msg="左部出错!";//过滤'->'
		if(c=='>')c=getChar();
		else error_msg="左部出错!";
		if(c=='\n')error_msg="该产生式缺少右部!";
		while(c!='\n')
		{
		    setRight(c);
		}
		sentence=str;
		return true;
	}*/
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -