Template:LBS/FormatSugar: Difference between revisions

No edit summary
mNo edit summary
Line 1: Line 1:
{{#lua:
{{#lua:
   local seq = stdin:match("[%S()%[%]]+");
   local seq = stdin:match("[%S()%[%], ]+");
   local ret = "";
   local ret = "";
   seq = string.gsub(seq, "a([1-9?]%-[1-9/?]*)", "<sub>&alpha;%1</sub>");
   seq = string.gsub(seq, "a([1-9?]%-[1-9/?]*)", "<sub>&alpha;%1</sub>");

Revision as of 14:08, 3 February 2012

{{#lua:

 local seq = stdin:match("[%S()%[%], ]+");
 local ret = "";
 seq = string.gsub(seq, "a([1-9?]%-[1-9/?]*)", "α%1");
 seq = string.gsub(seq, "b([1-9?]%-[1-9/?]*)", "β%1");
 seq = string.gsub(seq, "?([1-9?]%-[1-9/?]*)", "?%1");
 seq = string.gsub(seq, "Cer$", "Cer");
 seq = string.gsub(seq, "(Gal[NAcH234Me]*)", '%1');
 seq = string.gsub(seq, "(Glc[NAcH2]*)", '%1');
 seq = string.gsub(seq, "(Man[A]*)", '%1');
 seq = string.gsub(seq, "(Rha)", '%1');
 seq = string.gsub(seq, "(Fuc[A]*)", '%1');
 seq = string.gsub(seq, "(NeuAc[Me489]*)", '%1');
 seq = string.gsub(seq, "(NeuGc[Me489]*)", '%1');
 seq = string.gsub(seq, "(Xyl)", '%1');
 seq = string.gsub(seq, "(Ara)", '%1');
 print(seq);

|GlcNAcb1-3Xyla1-4Galb1-3GalNAca1-4(NeuAc?1-2NeuGc4Mea1-3)GalNAcb1-4(EtnP-6)GlcNAcb1-3Manb1-4Glcb1-1Cer}}