From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: caml-list@sympa.inria.fr Delivered-To: caml-list@sympa.inria.fr Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by sympa.inria.fr (Postfix) with ESMTPS id 2F2287EE4B for ; Tue, 8 Oct 2013 05:29:30 +0200 (CEST) Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of roessler@rftp.com) identity=pra; client-ip=76.96.30.17; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="roessler@rftp.com"; x-sender="roessler@rftp.com"; x-conformance=sidf_compatible Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of roessler@rftp.com) identity=mailfrom; client-ip=76.96.30.17; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="roessler@rftp.com"; x-sender="roessler@rftp.com"; x-conformance=sidf_compatible Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of postmaster@qmta10.emeryville.ca.mail.comcast.net) identity=helo; client-ip=76.96.30.17; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="roessler@rftp.com"; x-sender="postmaster@qmta10.emeryville.ca.mail.comcast.net"; x-conformance=sidf_compatible X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AigCAFF7U1JMYB4RlGdsb2JhbABZxTKBIBYOAQEBAQcLCwkSKoIlAQEFJxEIAQE2Ag8LGAkWDwkDAgECAUUGAQwIAodwAw+oJYRQAQWEUwiJagaPHjqEI4k8jkiGNo8O X-IPAS-Result: AigCAFF7U1JMYB4RlGdsb2JhbABZxTKBIBYOAQEBAQcLCwkSKoIlAQEFJxEIAQE2Ag8LGAkWDwkDAgECAUUGAQwIAodwAw+oJYRQAQWEUwiJagaPHjqEI4k8jkiGNo8O X-IronPort-AV: E=Sophos;i="4.90,1054,1371074400"; d="scan'208";a="35975486" Received: from qmta10.emeryville.ca.mail.comcast.net ([76.96.30.17]) by mail2-smtp-roc.national.inria.fr with ESMTP; 08 Oct 2013 05:29:27 +0200 Received: from omta10.emeryville.ca.mail.comcast.net ([76.96.30.28]) by qmta10.emeryville.ca.mail.comcast.net with comcast id aSBp1m0040cQ2SLAATVT0B; Tue, 08 Oct 2013 03:29:27 +0000 Received: from [192.168.1.104] ([76.104.182.57]) by omta10.emeryville.ca.mail.comcast.net with comcast id aTVR1m00M1Eifsk8WTVSgV; Tue, 08 Oct 2013 03:29:27 +0000 Message-ID: <52537BE9.6080005@rftp.com> Date: Mon, 07 Oct 2013 20:28:41 -0700 From: Robert Roessler User-Agent: Mozilla/5.0 (Windows NT 6.2; WOW64; rv:24.0) Gecko/20100101 Firefox/24.0 SeaMonkey/2.21 MIME-Version: 1.0 To: Francois Berenger , caml-list@inria.fr References: <525374ED.2010906@riken.jp> In-Reply-To: <525374ED.2010906@riken.jp> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=comcast.net; s=q20121106; t=1381202967; bh=D1tYo+Ymzw7//6RbQK3fUzOGbxOvKFUTu2zNuK6tLxc=; h=Received:Received:Message-ID:Date:From:MIME-Version:To:Subject: Content-Type; b=V2OLiZO+nhX2aI2NhoXY0DZe/rXiid/WwD+wY4tPie0bKuXxzuofmWamgoj6aJHUX FeFeRLINVHyyzqmDez/dtWApa2fIilaIEEsAWcHq/SpEm2E14t/GKNjTwBFu2kmbWr 87G3GZa7ZlSVTx7MVuSXA23AQM7kC3qObEqomeUlTnidMq+z8y7q1WNzBGHGYY02Dh gRiFYKIm3jL3/8RcOEJJtsYo7Vr1kTpy3hcTbyJccfZ1vj8xhVnW/wHI1/9kXkGQf1 rfTSN6pbVW28vAvpbquRUiUAXr+D7baFYLr7LE51Cqm4GTC5iGDHmLTYzKeV0JqVUU U7bRNR6uRZ0fw== Subject: Re: [Caml-list] Scanf.sscanf surprised me Francois Berenger wrote: > This example line and scanning format work: > > # let line = "active_ZINC01535869 > 0.470,0.389,0.479,0.453,0.470,0.631,0.562,0.590,0.677,0.558,0.379";; > val line : string = > "active_ZINC01535869 > 0.470,0.389,0.479,0.453,0.470,0.631,0.562,0.590,0.677,0.558,0.379" > # Scanf.sscanf line "%s %f,%f,%f,%f,%f,%f,%f,%f,%f,%f,%f" (fun name s1 > s2 s3 s4 s5 s6 s7 s8 s9 s10 s11 -> (name, s1, s2, s3, s4, s5, s6, s7, > s8, s9, s10, s11));; > - : string * float * float * float * float * float * float * float * > float * float * float * float > = > ("active_ZINC01535869", 0.47, 0.389, 0.479, 0.453, 0.47, 0.631, 0.562, > 0.59, 0.677, 0.558, 0.379) > > This one doesn't: > > # let line = > "active_ZINC01535869,0.470,0.389,0.479,0.453,0.470,0.631,0.562,0.590,0.677,0.558,0.379";; > val line : > string = > > "active_ZINC01535869,0.470,0.389,0.479,0.453,0.470,0.631,0.562,0.590,0.677,0.558,0.379" > > # Scanf.sscanf line "%s,%f,%f,%f,%f,%f,%f,%f,%f,%f,%f,%f" (fun name s1 > s2 s3 s4 s5 s6 s7 s8 s9 s10 s11 -> (name, s1, s2, s3, s4, s5, s6, s7, > s8, s9, s10, s11));; > Exception: End_of_file. > > I am quite surprised. > I was expecting the first separator being a space or a coma > to behave the same. The specification of scanf "%s" is "Any number of non-whitespace characters, stopping at the first whitespace character found". So, perhaps not that surprising? Regards, -- Robert Roessler